You find a game on the app store which is free and your excited to find out that it's free, So you are playing it and after you reach a certain level a pop up comes out informing you to buy the next level. OUCH! Bad thing to happen isn't it :D Those kinda games are called free minimum games. You need to purchase in order to play a further level. So as a QA you need to know everything about In-App purchase. Here you go
There are 5 kinds of purchase types
1. Consumable
2. Non-Consumable
3. Auto-renewable
4. Non-renewable
5. Free
- Consumable purchases are those which could be purchased again and again.
Ex: Coins, Cash. Energy, Lives, etc
- Non-Consumable purchases are those which are purchased once and is applicable to all the registered devices.
Ex: Levels, certain filters in photo and video apps.
- Auto-renewable purchases are those which renew subscriptions automatically.
Ex: Newspapers and Magazines, Monthly Benefits in-game (Adds gold, coins, etc)
- Non-Renewable purchase are those which has subscriptions for example 1 year without renewing for next year
Ex: Annual subscription for Magazines
- Free purchase are like auto-renewable but renews it for free.
Ex: Free contents with Newspapers
Things to remember
- Create a New apple test account to test with In-App purchases in the sandbox environment.
- Do not sign in your test account through settings, sign in through the application/game itself when accessing the purchasable content. If you log-in through setting you cannot purchase the content (**Test environment).
- Make sure that the receipt validation process is used in the application through your server in order to reduce hacks.
- If you have purchasable contents it is better to have it downloaded from a server rather than having it in package binary of the game as its easier for hackers to hack if its in binary.
- A detailed description has to be provided to the user informing about the money getting deducted automatically if its auto-renewable purchases.
- In-App purchase should be an intentional purchase and not accidentally. Apple rejects application which has purchases unintentional.
- Make sure to have a good customized dialog box informing about what content would be obtained if In-App purchase is performed to increase the chance of purchasing.
Test Cases
- Have Restore button in your game/application if it is a Non-consumable product. As user restore he shouldn't be charged with any real money again.
- Pricing information should be shown based on the region-specific currency i.e for Indian users it should be shown in Rupees and not in Dollars.
Note: Make sure the Artwork fits into the given box which shows the pricing information irrespective of region.
- Make sure a No Internet Connection alert is put up when user tries to access the In-App purchasable content.
- Restrict In-App purchase through settings / Disable In-App purchase: Alert should be put up informing about In-App purchase disabled while trying to access the content.
There are 5 kinds of purchase types
1. Consumable
2. Non-Consumable
3. Auto-renewable
4. Non-renewable
5. Free
- Consumable purchases are those which could be purchased again and again.
Ex: Coins, Cash. Energy, Lives, etc
- Non-Consumable purchases are those which are purchased once and is applicable to all the registered devices.
Ex: Levels, certain filters in photo and video apps.
- Auto-renewable purchases are those which renew subscriptions automatically.
Ex: Newspapers and Magazines, Monthly Benefits in-game (Adds gold, coins, etc)
- Non-Renewable purchase are those which has subscriptions for example 1 year without renewing for next year
Ex: Annual subscription for Magazines
- Free purchase are like auto-renewable but renews it for free.
Ex: Free contents with Newspapers
Things to remember
- Create a New apple test account to test with In-App purchases in the sandbox environment.
- Do not sign in your test account through settings, sign in through the application/game itself when accessing the purchasable content. If you log-in through setting you cannot purchase the content (**Test environment).
- Make sure that the receipt validation process is used in the application through your server in order to reduce hacks.
- If you have purchasable contents it is better to have it downloaded from a server rather than having it in package binary of the game as its easier for hackers to hack if its in binary.
- A detailed description has to be provided to the user informing about the money getting deducted automatically if its auto-renewable purchases.
- In-App purchase should be an intentional purchase and not accidentally. Apple rejects application which has purchases unintentional.
- Make sure to have a good customized dialog box informing about what content would be obtained if In-App purchase is performed to increase the chance of purchasing.
Test Cases
- Have Restore button in your game/application if it is a Non-consumable product. As user restore he shouldn't be charged with any real money again.
- Pricing information should be shown based on the region-specific currency i.e for Indian users it should be shown in Rupees and not in Dollars.
Note: Make sure the Artwork fits into the given box which shows the pricing information irrespective of region.
- Make sure a No Internet Connection alert is put up when user tries to access the In-App purchasable content.
- Restrict In-App purchase through settings / Disable In-App purchase: Alert should be put up informing about In-App purchase disabled while trying to access the content.