All Oculus Quest developers MUST PASS the concept review prior to gaining publishing access to the Quest Store and additional resources. Submit a concept document for review as early in your Quest application development cycle as possible. For additional information and context, please see Submitting Your App to the Oculus Quest Store.
Note: You are viewing the Native version of this topic. To view this topic for Unity development, see Add-Ons - Downloadable Content and In-App Purchases (Unity). To view this topic for Unreal development, see Add-Ons - Downloadable Content and In-App Purchases (Unreal).
Add-ons provides a way for you to easily create and manage in-app purchases (IAP) and downloadable content (DLC) for your apps and app groupings. Add-ons can be featured on app pages in the Oculus Store, and the Oculus dashboard provides an easy way to upload and associate store assets such as screenshots, video trailers and more with your extra app content. In addition, if there are additional asset files associated with your add-ons, they be uploaded separately and ship independently. This is simpler than uploading extra asset files every time you upload a new build of your app.
Add-ons have the following characteristics:
Following is a summary of steps to provide an add-on for your app:
You can always view the add-ons for your apps on the developer dashboard.
On the developer dashboard for your org, go to Settings > App Groupings, choose an app grouping and then navigate to Add-ons. See the following image for an example:

The Add-ons page contains three categories.
Note that your existing IAPs will display and can be edited on the Add-ons page.
The following image shows an example of the Add-ons page.

Go to the developer dashboard for your org and then find the app grouping that you want to create add-on content for under Settings > App Groupings, choose the app grouping and then navigate to Add-ons.
Once you create it, an add-on is automatically associated with new app builds you upload, unless you specify otherwise.
To add store assets:
For the store, you must add the following:
You can now submit the assets for review by the Store team.
If you choose to submit your add-ons for store review, meaning it will display in the store on an app detail page, it must meet the store content requirements. For store content guidelines and best practices, see Content Guidelines and Asset Best Practices in the distribute guide. You should allow at least seven days prior to your desired launch date to allow time for the store review process and request any necessary changes.
While your add-ons are under store review, they will be visible in the In Progress section. When they are approved and display in the store, they will display in the In Store section. Once the add-on is approved, you can set a launch date on the Add-on Dashboard.
Once launched, it will be available to all users from then Add-on and Downloadable Content sections of your app in Oculus Store.
All Oculus apps are rated by the International Age Rating Coalition (IARC). Additionally, apps released in South Korea apps are rated by the Game Rating and Administrator Committee (GRAC). Add-ons must have the same content rating as the app associated with the Add-ons.
View the app ratings in the Developer Dashboard, in the Submission Info > Content Ratings section.
If add-ons would receive a higher rating than the associated app, you must re-request and update the IARC and GRAC rating of the associated application.
If your add-on requires additional files that are not provided in your main app package, such as DLC, you must upload these Oculus. You do this with the Oculus Platform CLI Utility.
When you upload files you use an app ID and add-on SKU to associate the file with a specific app and add-on. If the app grouping contains apps for different devices, make sure that you have an appropriate file type uploaded for each add-on. For example for an app that is available on Quest and Rift, you must upload an file for Android and a file for Windows and make sure you associate them with the Quest and Rift app, respectively.
To upload DLC files:

upload-add-on command with the following parameters: app-id - ID for the app. Make sure you specify the correct app if you have multiple apps in the groupingapp-secret - App secret (from app API page)file - Path to the files for uploading. For Android apps, make sure each file is less than 4 GB.sku - SKU you specified when you created the add-onOnce the files are successfully uploaded, you will see them displayed on the Add-Ons dashboard.
As stated previously when you create a new add-on, it will automatically be associated will all new builds for that app. If you want to specify older or newer builds or exclude add-ons Alternatively, you can propagate the new Add-on to the existing build versions, so users on older builds can have access to it. In this case please make sure the legacy builds are compatible with new DLC files.
To support this use, you can use --min-version-code parameter of the upload-add-on command.
$ ./ovr-platform-util upload-add-on --app-id <app-id> --app-secret <app-secret> --file <path-to-DLC-file> --sku <Add-on-SKU> --min-version-code 5
In the example above all the main builds with the version code 5 and above receive the new DLC files in the list of the Asset Files for those builds.
Add-ons and their associated files are automatically associated with a new app build when it is uploaded. If you want to ship a build without add-ons, for testing purposes, for example, you use the --exclude-add-ons switch with the upload command. For example for Rift:
$ ./ovr-platform-util upload-rift-build --app-id <app-id> --app-secret <app-secret> --apk <path-to-APK> --channel <release-channel> --exclude-add-ons
And for Quest:
$ ./ovr-platform-util upload-quest-build --app-id <app-id> --app-secret <app-secret> --apk <path-to-APK> --channel <release-channel> --exclude-add-ons
You can use a template and bulk-upload IAPs. Note that this method requires a SKU for each currency you offer your item in. We recommend the AOC form for IAPs because you create one SKU across currencies, and can easily associate DLC files with a SKU. However, for details about how to use the template for bulk-uploading, see Commerce (IAP).
For details on how to integrate DLC and IAP in your app, and download files at runtime, see In-App Purchase Integration. For information on how to test your integration, see Test IAP.
You can view detailed analytics for your add-ons filtered by date range. For more information, see Add-on Content Analytics.