IAP has been officially released ! πŸš€

After a much anticipated arrival, I think many of you will be happy to hear that IAP has been released to all PRO and above users. You can read more about how to use the blocks here!

Screen Shot 2021-12-10 at 7.24.37 AM


That is great!

1 Like

We’d love to hear/see what you do with it! Share your successes!

1 Like

One question, it’s now a component in the Drag and Drop Interface right?

1 Like

Sadly, I’m not a PRO user or above. :pensive:

Yes, it is in both StP and DnD. I just checked both of them.


In drag and drop it was relesed before only for stp it released today @codelover1234

Was eagerly waiting just saw @jared message in thunkable chat.


To be more accurate, the feature was released and then removed but now officially released to all.

All members can see it and use it but will not be able to publish/download any app containing it unless being at least PRO.


@jared This is huge, a very big deal for all thunkers. A huge thank you for all the effort that went into making this happen. With that said I’ve read the documentation.

Has someone written up a step-by-step guide on the step up needed for your app in the app store and how to use the blocks to make your app content available and gating content?

Any extra info or blog post will be helpful. (edit) working through @muneer post here

I’m getting this error in apple connect. I’m confused, does the productID need to be in the app before I can create the item in apple connect?


We are working on this - more to come soon!


To add IAP functionality in iOS apps, you need first to add the component only and publish the app as new. Once the app is approved then you can add the details of purchase items or subscription items and add the programming blocks required then publish again as an update.

1 Like

@muneer is there a file i could look at that shows the blocks to do iap subscription purchase/restore to handle gating features?

1 Like

Not yet. We are currently working on docs and should have more β€œofficial” docs in the coming weeks.

Would it be helpful to have step by step instructions to setup purchases like we do for publishing apps?


The publishing apps step by step instructions were very helpful. I am very grateful for them. @jared

@jared @muneer Okay I got an IAP subscription working and got it to unlock my content in the app.

Question, while testing this, this is what I experienced. Everything look normal?

I first saw this popup. Is it a testflight thing?

Assuming this is the first popup the user will see to start the transaction.

Assume this is another testflight only screen?

Once apple confirmed the purchase I got this popup. Is this a one-time popup depending on if the user has agreed to latest terms?

Agreement, agree

The button I highlighted in red shows the IAP went through and executed my blocks to unlock this button celebration

1 Like

Your screens are OK and as expected however, this is not the end of the story. Both iOS and Android requires you to connect to the store using external server (not the app) and confirm the subscription otherwise, the transaction would be reversed and the charges will be refunded.

Have you done this step?

1 Like

I’m not sure I follow . Do you have a screenshot of what I should look for? @muneer

See this. The first entry is for a one item and the second entry is for subscription that has not been confirmed so the App/Play Store refunded it.

@muneer All the explanation below is in TestFlight or internal testing.

So far I have successfully got my app to purchase a subscription from apple and android store and unlocked content in my app if the purchase was a success.

I’m trying to support the flow where a user has already made a purchase but reinstalled the app. I’m able to pull the json info but have not successfully target the certain property to check if it = true. How do I use the blocks to target these properties? Or am I going about this all wrong?

Here is my blocks

Here is the json I’m seeing when I β€œGet Most Recent Active Purchase”

When I do the check on a phone that has not purchased I get json that returns

1 Like