Most mobile games today use some form of in-app purchasing (IAP) as part of their monetization strategy. Using Amazon IAP in GameMaker: Studio is not particularly difficult – once you know how to do it. But getting to that stage takes some careful study and experimentation. Hopefully, I can help short cut that process for you as I describe how I built it for Retroids.
Understanding in-app purchase basics
By now, I’m sure most of us are very familiar with IAP. There are three types of IAP items found in games—consumables, entitlements and subscriptions—with consumables and entitlements being far more common, so that is what we’ll cover here.
Consumable IAP items are things that are used, or consumed, during gameplay. Gold, gems, health, potions, etc. You might by a “Bag of 500 coins” and then use those coins to outfit your character, buy gas for a race car, etc.
Entitlement IAP items are things that are “unlocked” and continue to be available to the player forever after that point. Level packs or special items like a gun, sword or personalization items like a costume or theme pack are common entitlements.
One of the great things about IAP is that your game doesn’t have to deal with collecting the user payment information, authorizing and processing the payment, and all the other aspects of securely managing credit card information on your own. As you can imagine, users may be reluctant to enter their payment information separately in every game they are playing. You can rely on the Amazon Appstore to handle all those backend details and to provide a single place that customers already trust with their payment information.
On Amazon Appstore, as with other app stores, there are parts of the IAP that you configure on the server and parts that you code in the game. Each IAP item is referred to as a SKU (stock keeping unit, which is a legacy retail term for “an individual type of thing you are selling”). This includes the name of the SKU, the price and a few other pieces of metadata. The price that is configured in the Appstore is what the customer will be charged. Your game can’t change that at run time, but you can change it whenever you want—without requiring an app update—on the server. Read More →