How to reduce risk when developing Apple e-commerce apps
We recommend you develop e-commerce functionality locally on XCode to avoid damaging any LIVE offering or granting un-intended offers to customers.
This article is intended for business owners who are seeking to learn how to reduce risk when developing new e-commerce functionality; testing discounted or deal periods or when on-boarding or training developers.
In order to avoid a situation by which you grant customers discounts or offers for In-App Purchases or Subscriptions which were not intended for public release, it is important that your development team develops things locally in Xcode.
Once things work on a local StoreKit Configuration File, update App Store Connect and conduct quality assurance with a synced StoreKit Configuration File to confirm that the updates work as desired.
Detailed information about our recommended step by step process for developing e-commerce functionality is found below.
Terminology
Incase any of the terms used above or within this article are not clear, we have provided the following descriptions to help you understand our recommendations for reducing risk when developing new e-commerce functionality.
- Locally implies that things are done on a device with limited or no internet related functionality.
- App Store Connect is a suite of tools used to publish and manage apps on the Apple App Store.
- The file that Apple apps use to create e-commerce offering locally, or synced with App Store Connect, is known as a StoreKit Configuration File.
- Quality Assurance is the process of determining that your product or service meets the product specification; and involves automated and human testing to verify that everything works as expected.
- StoreKit is Apple's framework that supports a safe and secure purchase experience for In-App Purchases and Subscriptions. The StoreKit framework handles purchases end-to-end, including retrieving product information, processing payments, and delivering the product.
- Sandbox Environment implies using a test account on your local app, which allows you to test apps as if they were used by a customer in the real-world.
Process
The following section provides a detailed step by step walkthrough on our process for reducing risk when when developing Apple e-commerce functionality.
Step One: Create the StoreKit Configuration File
If your app has no public App Store Connect e-commerce functionality, we recommend that your development team creates the offering on App Store Connect and then creates a StoreKit Configuration File that's synced with App Store Connect.
As the e-commerce functionality of your app has not yet been released to the general public, it's safe to develop directly with true data.
Please note that if you do this you can skip Steps Four, Five and Six.
If your app includes e-commerce functionality that is already out in the market, we recommend that your development team converts the synced StoreKit Configuration File to a local file and adds the new offering to this local file.
Step Two: Setup XCode for StoreKit Testing
In order to develop StoreKit functionality locally, your development team must setup XCode to work with the file created in Step One.
If they do not do this, your development team will get a range of errors that include: Finance Authentication Errors, no StoreKit Account or StoreKit did not receive any products.
Step Three: Develop and Test Updates
Your development team can now develop the e-commerce functionality without any risk.
Step Four: Update App Store Connect
Once everything works locally, update your apps App Store Connect In-App Purchases and Subscriptions to reflect the changes.
Please note that if your app had not yet released App Store Connect e-commerce functionality and your development team choose to develop directly with a synced App Store Connect StoreKit Configuration File, you can skip this step.
Step Five: Create a new synced StoreKit Configuration File
Your development team must delete the local StoreKit Configuration File that was created in Step One and create a new StoreKit Configuration File that is synced with App Store Connect.
Please note that if your app had not yet released App Store Connect e-commerce functionality and your development team choose to develop directly with a synced App Store Connect StoreKit Configuration File, you can skip this step.
Step Six: Update the StoreKit Testing File
Your development team must then update the file that XCode uses to allow for local testing.
Please note that if your app had not yet released App Store Connect e-commerce functionality and your development team choose to develop directly with a synced App Store Connect StoreKit Configuration File, you can skip this step.
Step Seven: Carry out Quality Assurance
Using a sandbox environment, ensure that the new e-commerce functionality meets expectations.
Step Eight: Release the app
Once everything has passed quality assurance, you can release your app to public.