According to the documentation:
So I guess on Android the non-consumable purchases are restored automatically on every app launch, and this triggers "On purchase success" event.
Still doesn't seem right to me, because this is not a new purchase. I think it should trigger "On Product Owned" event, not "On purchase".