Join our Slack community: News, tips, support, and much more.
How to leverage Promotional Offers on iOS
If you are interested in retaining your existing users, or win back lapsed subscribers, you should consider offering them a free or discounted price for a specified duration. With App Store promotional offers you can offer deals to qualifying users.
May 20, 2022     |     4 MIN READ

Promotional offers are only available to users who are either existing subscribers or those who have let their subscriptions expire.

You decide the business logic in your app to determine which of your users see which offers. You set the prices and duration of the offers in App Store Connect, and you can have up to 10 active offers for each subscription so you can determine which offers are the most compelling and useful to that particular user.

Glassfy simplifies the entire client side process. Issues that you might encounter with StoreKit are solved with a Glassfy implementation.

Apple has two other types of offers available to you as developers. Introductory Offers are for acquiring new subscribers and Offer Codes are available for acquiring, retaining, and wining back subscribers from outside of your app. Promotional Offers, however, are the best way to retain or win back subscribers from within the app itself.

App Store Connect

Create the Offer

As with any type of purchase, whether you are using Apple’s own native StoreKit or a third party SDK like Glassfy, you need to first set things up in App Store Connect and have a subscription already created and approved because only current or lapsed subscribers can take advantage of a promotional offer.

1. Open your app in App Store Connect and in the Features section select Subscriptions.

2. Open one of your subscription groups to access your subscriptions.

3. Open the the subscription for which you wish to add the promotional offer. Note: Make sure you make note of the Product ID as this will be required when you set up your sku in Glassfy.

4. Click on Subscription Prices for that subscription and select Create Promotional Offer

5. Provide a Promotional Offer Reference Name and Promotional Offer Identifier. It is recommended that for the identifier, you create one that will reflect the feature, duration and price. In this example, the promotional offer is for one month free ( promo_fullAccess_1month_free). You will need this identifier along with the product identifier from step 3 above when configuring your glassfy sku. Then click on Next

6. Select the type of offer and choose the duration then click on next

7. Review the offer for the countries or regions and click on Confirm.

This will return you to the Subscription Pricing screen where your offers will be displayed

Generate the Private Key

Still in App Store Connect:

  1. Open the Users and Access tab
  2. Select Keys tab
  3. Select In-App Purchase
  4. Click on Generate In-App Purchase Key
  5. Provide a Name for the key and click on Generate

6. This will generate the key and add it to the list of keys you my have already added. You will need this key for the Glassfy setup so when you are ready, click on the download link and download it. 
 Note: The key can only be downloaded once so be sure to move the downloaded key to a location where you will have access when needed in the Glassfy setup.

Implementing the promotion

Using StoreKit (for reference only)

If you have ever implemented a promotional offer using StoreKit, you will quickly realize that it is a lot of work. The steps include:

  • Fetching the product from AppStore through StoreKit
  • Verifying user eligibility by checking the user’s previous purchases
  • Configure your own server to generate the Digital Encoding Rules formatted binary signature
  • Purchase the item through StoreKit
  • Send the receipt to your server
  • Have your server verify that receipt is valid.

Using Glassfy

Glassfy greatly simplifies this process and manages the communication for you.

1. Log in to your Glassfy account then open your application and click on the Settings tab.

2. Upload the previously downloaded subscription p8 file (step 6 above) to the specified Subscription p8 Key File location on the form.

3. The Subscription p8 Key ID will be filled in for you

4. On the products tab, create a new Sku

a. Create a unique glassfy SKU ID that you will use in the Xcode source when fetching your offerings.

b. Enter the App Store Product ID. (See step 3 in the App Store Connect section above.)

c. Enter the App Store Promotional Offer Identifier (See step 5 in the App Store Connect section above.)

Displaying Offers in Xcode

Once you have completed the setup, you can display the offers to your users based on your own application logic.

If the user is eligible, the purchase is made like any other sku in glassfy using the Glassfy.purchase function.