For branded native app subscriptions only
This article explains how matches work when using in-app purchases (IAP) within your CMS. It also outlines several real-case scenarios so you can choose the setup that best fits your distribution needs.
1. Understanding In-App Purchases
Using in-app purchases adds a price to your game inside the branded native app. Users will be able to purchase access directly through the app stores.
To enable IAP, your project must be:
- Published, and
- Listed in the app
Important: The option “Access via invitation code only” should not be used when selling your game through IAP. That option is intended for selling your game externally—for example, through your website, ticketing platforms, partner organizations, or for keeping a project private.
2. Access Settings Explained
a) Listed in the App
This is the correct setting when using IAP. When published:
- Your game appears publicly listed in your branded app.
- The game will display the in-app product price.
- You can still distribute redeem/invitation codes to give access to the game for free.
b) Access via Invitation Code Only
Use this setting when:
- You want the game not to be visible publicly.
- You want to sell or distribute access outside of the app (e.g., website purchase, ticketing, private access).
- You want only selected participants to enter.
This setting is not compatible with selling your game using in-app purchases as no price will show up on the redeemed game.
3. Using IAP + Redeem Codes Together
If your game is listed in the app and includes an in-app product, you can distribute redeem codes without having to make a separate copy of the game.
This allows you to:
- Sell the game normally via IAP (the game listed in the app)
- Give certain users free access using match codes (using the redeem codes)
Both paid and free users can play the same version of your game.
Keep these settings:
- Published project
- Listed in the app
- In-app product enabled
4. How Matches Are Created and Assigned
Match setup options (Publish Settings)
Under the Publish Settings, you can choose how the game is played. A game can be set up in two ways:
1. Shared match
All players join the same game match. Access to the match can be sold using an in-app purchase (IAP).
2. Private match
A player starts a new game match directly from the app. Access to creating the match can be sold using an in-app purchase (IAP). After purchasing, the player receives an invitation code and can invite friends to join the match for free by sharing that code.
How users join matches
- If a user joins the game without entering a match invitation code, they automatically join the latest created running match in the CMS.
- If no match exists, the system creates one automatically.
How to distribute free access
For users who should access the game for free:
- Create or identify the latest match in the CMS
- Share its match invitation code
They will join the same match as those who buy the game.
All players—paid and free—will appear under one shared match, meaning:
- One shared scoreboard
- One shared redeem code
5. Keeping Paid Users and Free Users in Separate Matches
If you prefer to keep groups separate (different scoreboards):
- Ensure the match used for free users is older than the newest match.
- Paid users (who enter without a code) always join the latest match.
- Free users (who enter a manually shared code) join the older match you selected.
This lets you:
- Track groups independently
- Manage different pricing journeys without duplicating the project
6. Summary of Common Use Cases
Sell with IAP (public listing)
- Project listed in the app
- In-app product enabled
- Users purchase directly in the app
Sell or distribute externally (private access)
- Project set to "Access via invitation code only"
- No IAP
- Access sold or distributed through other platforms
Sell with IAP + distribute free access
- Project listed in the app
- In-app product enabled
- Share match code with free users
Keep free users and paid users in separate matches
- Share an older match code with free users
- Paid users join newest match automatically
* You can always give a name to your matches to keep track of it such as the following example:
https://support.locatify.com/hc/en-us/articles/6330188215069-What-is-a-match