I've managed to make IAP work. There were few things which made a confusion so I will list them below, hopefully it wil help others as well.
1. You should obviously read the tutorial for C2 IAP first.
2. "Has Product" condition is not a check for availability of the product in store. With this condition you can check if customer has already purchased a managable product ( like "premium_account" or "remove_ads" not like "gold" or "coins"). It is explained in tutorial however I saw some ppl were using it in a wrong way (as did I) so I think it's worth to highlight this.
So the correct way would be:
On Touch("buy_button") -> Purchase product("gold1000")
On Touch("buy_button") -> if Has Product ("gold1000") -> Purchase product("gold1000")
3. There are some examples using cranberrygame Phonegap IAP plugin, and this plugin requires a licence from Android Developer Console which seems to be very logic as this seems to be a kind of API Key for authentication. I spent a lot of time searching for a way to authenticate official IAP plugin in the same manner. I even thought that maybe it works with Google Play plugin (in this plugin you have to pass licence and app Id). But the answer was much easier - there is no need to provide any API key for C2 official IAP plugin. You simply add it to the project and use it without any configuration.
I am sure those are obvious and trivial things for some of you, but those are the problems I had and I found some simmilar (unanswered) questions on this and other sites so it look like common problems/missunderstandings.
It's also worth to mention that IAP can't be tested on any emulator so after every change you have to wait hours or days before market accept it as alpha/beta version so you can test your changes. I spent over a week to figure out those 2 "simple" problems. Hope it will help some of you.
@jogosgratispro I think you can change the topic title to "How do I use Google Play and IAP objects properly?" cause those two are also confused to be connected as well.