Minimum Code Version
This doc supports the following versions of the Nami SDK:
- Apple SDK 3.0.0+
- Android SDK 3.0.0+
- React Native SDK 3.0.0+
- Flutter SDK 2.0.0+
Looking for documentation on older versions of the SDK? Check out the v1.0 docs.
Each store that you wish to sell in-app purchases on has some required setup you need to complete.
This includes steps such as signing various agreements, authorizing users to make test purchases. Please review our guidelines for specific stores below.
Forgetting to properly enable your app for in-app purchases is a very common reason to not see any purchase buttons on paywalls as you work through the rest of this guide!
Head over to https://app.namiml.com/join to create an account if you don't already have one.
We recommend using a company email address when registering, as you won't be able to transfer your app to a different account later. You can Invite your Team later.
Click the + Add App button. Enter a name for your app (you can always change this later) and click the Create App button.
App Platforms are the stores you are going to sell your app on such as the Apple App Store or the Google Play Store.
Click on Integrations, then choose Apple or Google from the list of Mobile Payment Providers.
Once you've selected your platform, give it a name such as App Store or Apple, and then enter the marketplace identifier. The name of this varies by platform. For example, on the App Store it is called the Bundle Identifier and on the Play Store it is called the Package Name. Then click Add New Integration.
The value you enter here must match the correct identifier name on the store itself (e.g. on App Store Connect or the Play Console) and in your app code.
If these do not match, the Nami SDK will not function correctly with fetching product SKUs from stores and executing purchases.
If you just wish to experiment with the Nami platform or test purchases using our Bypass Store mode, just enter any ID.
In order to enable correct SDK purchase behavior, you must now add the store credentials to the platform, such as the App Shared Secret or Google Service Credentials. See the guides below for more details.
Product SKUs are a single purchase option in your platform. These directly map to products created in the store platforms such as the App Store or Play Store.
Each product SKU has a single price point.
For subscriptions, each product SKU also has a fixed bill-term (weekly, monthly, yearly, etc.) as well as fixed free trial periods and introductory pricing, if applicable.
Select Products in the main navigation and then click the + Add Product button.
Each product SKU must belong to a specific App Platform. On the SKU creation modal select the correct platform, provide a Reference Name, which is how you will see the SKU in the Control Center, a SKU ID, and select the SKU Type. Click the Add button to create the product SKU.
The SKU ID in the Control Center must match the ID defined on the store (e.g. App Store Connect or the Play Console) for the SDK to work correctly.
See our guide on Add your In-App Products for more details including where to find the SKU ID for your products on the stores.
What is an Entitlement?
An Entitlement is a set of paid content or features that should be unlocked with a purchase.
If you have multiple Product SKUs that provide the same functionality, these would both belong to a single entitlement.
A common example of this is when you have a monthly and yearly subscription option. These purchases both unlock the same level of access in your app, and therefore belong to a single entitlement.
There are 2 steps to setting up an Entitlement for your app on the Nami platform. First, you need to create the entitlement.
Navigate to the Entitlements section of the app and click the + Add Entitlement button.
Enter a Name for your entitlement and an Entitlement Reference ID. The ID will be used by your developers in your app code to refer to this entitlement. Click the Add button.
After creating your entitlement, you then need to add product SKUs that unlock that entitlement after they are purchased.
If you sell your app on multiple different stores, your entitlement will have SKUs from each store where it can be purchased.
Start by navigating to the Entitlements screen and clicking the Edit button next to the entitlement that you created in Step 5.
Click on the Products tab and then click the + Associate Product SKUs button.
In the modal that opens up, check the Product SKUs that you want to grant access to the entitlement when they are purchased. In the example below, we have both a Monthly and Yearly subscription product that grants access to the same entitlement. Check the box next to each one and then click the Associate SKUs button.
Now you have everything in place to design your first paywall.
Navigate to Paywalls in the main navigation and click the + Add Paywall button.
Select a paywall template.
The basics of designing a paywall are
- Add your own marketing copy in the the Title Text, Body Text, or List components
- Head to the Background component to change the main background color or image
- Use the Products tab to add your in-app purchase products
Each section has its own style controls to adjust things like font size, text alignment, and colors. Explore each component and the built-in tools to bring your paywall vision to life.
For more details on our Paywalls, visit our guide: Create a Paywall.
The final step is to add your paywall to a campaign and make the campaign Live. Head to the Campaigns section on the main navigation and click the + Add Campaign button.
Enter a Name for the campaign. Add your paywall that you created in step 7.
Click 'Save Campaign' to save changes. Then click 'Set Campaign Live'. This will cause your paywall to show every session when you launch your app once you've integrated the Nami SDK into your app code.
Learn more about how to use campaigns in our guide: Create a Campaign.
Nami supports multiple different platforms and frameworks for integrating with your app. Select the platform or framework you use below to get started.
Updated 12 days ago