It works!!! Thank you!!!!
As you can see on my sad example current manual doesn't help with non-consumable purchase at all.
I think it need to make some changes about it in manual:
- different way of restore purchaise (TRANS_STATE_PURCHASED only on ios even if iap.restore recive true on android) - is it still right behavior?;
- no need to finish transaction on android if user want non-consumable item (But still need on ios);
- if purchase was not finished ios will call callback on start of the app for continue purchase;
- have no callback on ios if you try to buy non-consumable product one more time (but has this callback on android).
This is confusing when I saw that it works the same way on ios and android with consumable purchases. When I try to use non-consumable and has many difference.
I really happy that it was not an engine bug.
And I hope that my pain will help to some developers in future =)))