Create an app submission for your app

Note

This section of the documentation describes how to create an app submission in Partner Center. Alternatively, you can use the Microsoft Store submission API to automate app submissions.

Once you've created your app by reserving a name, you can start working on getting it published. The first step is to create a submission.

You can start your submission when your app is complete and ready to publish, or you can start entering info before you have written a single line of code. Updates you make to your submission are saved, so you can come back and work on it whenever you're ready.

After your app is published, you can publish an updated version by creating another submission in Partner Center. Creating a new submission lets you make and publish whatever changes are needed, whether you're uploading new packages or just changing details such as price or category. To create a new submission for a published app, click Update next to the most recent submission shown on its Overview page.

You can make changes to a published app at any time. To submit updates, go to the application's overview page in Partner Center. Navigate to the update app section. An update submission has already been created using the info from your previous submission as a starting point. You can add a new package or update any of the information like pricing model, listing details etc.

App submission checklist

Here are the details that you can provide when creating your app submission, with links to more info.

Items that you are required to provide or specify are noted below. Some areas are optional, or have default values provided that you can change as desired. You don't have to work on these sections in the order listed here.

What are add-ons?

Add-ons (also sometimes referred to as in-app products) are supplementary items for your app that can be purchased by customers. An add-on can be a fun new feature, a new game level, or anything else you think will keep users engaged. Not only are add-ons a great way to make money, but they help to drive customer interaction and engagement.

Add-ons are published through Partner Center, and require you to have an active developer account. You'll also need to enable the add-ons in your app's code.

An add-on must be associated with an app that you've created in Partner Center (even if you haven't submitted it yet). You can find the button to Create a new add-on on your app's Overview page or on its add-ons page.

After you select Create a new add-on, you'll be prompted to specify a product type and assign a product ID for your add-on.

Pricing and availability page

Field name Required Notes
Markets Not required
Audience Not required
Discoverability Not required
Schedule Not required
Base price Required
Free trial Not required
Sale pricing Not required
Organizational licensing Not required

Properties page

Field name Required Notes
Category and subcategory Required
Privacy policy URL Required Sometimes not required.
Website Not required
Support contact info Not required Required if your product is available on Xbox.
Contact details Not required Required for business/company accounts
Game settings Not required
Display mode Not required
Product declarations Not required
System requirements Not required

Age ratings page

Field name Notes Notes
Age ratings Required

Packages page

Field name Required Notes
Package upload control Required At least one package required.
Device family availability Not required
Gradual package rollout Not required
Mandatory update Not required

Store listings

You'll need all the required info for at least one of the languages that your app supports. We recommend providing Store listings in all of the languages your app supports, and you can also provide Store listings in additional languages. To make it easier to manage multiple listings for the same product, you can import and export Store listings.

Field name Required Notes
Description Required
What's new in this version Not required
App features Not required
Screenshots Required At least one screenshot required; four or more recommended
Store logos Not required Required for some OS versions.
Trailers Not required
Windows 10 or Windows 11 and Xbox image (16:9 Super hero art) Not required
Xbox images Not required Required for proper display if you publish to Xbox
Supplemental fields Not required
Search terms Not required
Copyright and trademark info Not required
Additional license terms Not required
Developed by Not required

Submission options page

Field name Required Notes
Publishing hold options Not required
Notes for certification Not required
Restricted capabilities Not required Required if your product declares any restricted capabilities
Submission notification audience Not required

Availability page

Field name Required Notes
Markets Required Default: All possible markets
Pricing Required One of: Free; Paid; Freemium; Subscription.
Free Trial Required Not required if pricing is set to Free or Freemium.

Properties page, support info section

Field name Required Notes
Category Required
Subcategory Not required
Secondary category Not required
Does this product access... Required
Privacy policy URL See notes Only required if you answered yes to the previous question
Website Not required
Contact details Not required Required for business/company accounts
Support contact info Not required

Properties page, products declaration section

Field name Required Notes
This app depends on non-Microsoft drivers or NT services. Not required
This app has been tested to meet accessibility guidelines. Not required
This product supports pen and ink input. Not required
Notes for certification Recommended Character limit: 2,000

Properties page, system requirements section

Field name Required Notes
Touch screen Not required
Keyboard Not required
Mouse Not required
Camera Not required
NFC HCE Not required
NFC Proximity Not required
Bluetooth LE Not required
Telephony Not required
Microphone Not required
Memory Not required
DirectX Not required
Dedicated GPU Memory Not required
Processor Not required
Graphics Not required

Packages page

Field name Required Notes
Package URL Required At least one package URL is required
Language Required At least one language is required
Architecture Required
Installer parameters Required Support for silent install is required. Other parameters are optional
App type Requited Specify between EXE and MSI
Installer handling URL Required Required in case of EXE only

Store listings page

Each language has a separate store listing page. One listing page is required. It is recommended to provide complete listing page information for each language your app supports.

Field name Required Notes
Description Required Character limit: 10,000
What’s new in this version Not required Character limit: 1,500
App features Not required Character limit: 200 per feature; Feature limit: 20.
Screenshots Required Required: 1; Recommended: 4+; Maximum: 10
Store logos Required 1:1 Box art required, 2:3 Poster art recommended
Short description Not required Character limit: 1,000
Additional system requirements Not required Character limit: 200 characters per requirement; Requirements limit: 11 for each of minimum and recommended hardware.
Keywords Not required Character limit: 40 per term; Term limit: 7; Maximum of 21 unique words total among all terms.
Copyright and trademark info Not required Character limit: 200
Applicable license terms Required Character limit: 10,000
Developed by Not required Character limit: 255

Here's a list of the info that you provide when creating your add-on submission. The items that you are required to provide are noted below. Some of these are optional, or have default values already provided that you can change as desired.

Create a new add-on page

Field name Notes
Product type Required
Product ID Required

Properties page

Field name Notes
Product lifetime Required if the product type is Durable. Not applicable to other product types.
Quantity Required if the product type is Store-managed consumable. Not applicable to other product types.
Subscription period Required if the product type is Subscription. Not applicable to other product types.
Free trial Required if the product type is Subscription. Not applicable to other product types.
Content type Required
Keywords Optional (up to 10 keywords, 30 character limit each)
Custom developer data Optional (3000 character limit)

Pricing and availability page

Field name Notes
Markets Default: All possible markets
Visibility Default: Available for purchase. May be displayed in your app's listing
Schedule Default: Release as soon as possible
Pricing Required
Sale pricing Optional

Store listings

One Store listing required. We recommend providing Store listings for every language your app supports.

Field name Notes
Title Required (100 character limit)
Description Optional (200 character limit)
Icon Optional (.png, 300x300 pixels)

When you've finished entering this info, click Submit to the Store. In most cases, the certification process takes about an hour. After that, your add-on will be published to the Store and ready for customers to purchase.

Note

The add-on must also be implemented in your app's code. For more info, see In-app purchases and trials.

Updating an add-on after publication

You can make changes to a published add-on at any time. Add-on changes are submitted and published independently of your app, so you generally don't need to update the entire app in order to make changes to an add-on such as updating its price or description.

To submit updates, go to the add-on's page in Partner Center and click Update. This will create a new submission for the add-on, using the info from your previous submission as a starting point. Make the changes you'd like, and then click Submit to the Store.

If you'd like to remove an add-on you've previously offered, you can do this by creating a new submission and changing the Distribution and visibility option to Hidden in the Store with the Stop acquisition option. Be sure to update your app's code as needed to also remove references to the add-on (especially if your previously-published app supports Windows 8.1 earlier; this visibility setting won't apply to those customers).

Important

If your previously-published app is available to customers on Windows 8.x, you will need to create and publish a new app submission in order to make the add-on updates visible to those customers. Similarly, if you add new add-ons to an app targeting Windows 8.x after the app has been published, you'll need to update your app's code to reference those add-ons, then resubmit the app. Otherwise, the new add-ons won't be visible to customers on Windows 8.x.

Set your add-on product type and product ID

An add-on must be associated with an app that you've created in Partner Center (even if you haven't submitted it yet). You can find the button to Create a new add-on on your app's Overview page or on its Add-ons page.

After you select Create a new add-on, you'll be prompted to specify a product type and assign a product ID for your add-on.

Product type

First, you'll need to indicate which type of add-on you are offering. This selection refers to how the customer can use your add-on.

Note

You won't be able to change the product type after you save this page to create the add-on. If you choose the wrong product type, you can always delete your in-progress add-on submission and start over by creating a new add-on.

Durable

Select Durable as your product type if your add-on is typically purchased only once. These add-ons are often used to unlock additional functionality in an app.

The default Product lifetime for a durable add-on is Forever, which means the add-on never expires. You have the option to set the Product lifetime to a different duration in the Properties step of the add-on submission process. If you do so, the add-on will expire after the duration you specify (with options from 1-365 days), in which case a customer could purchase it again after it expires.

Consumable

If the add-on can be purchased, used (consumed), and then purchased again, you'll want to select one of the consumable product types. Consumable add-ons are often used for things like in-game currency (gold, coins, etc.) which can be purchased in set amounts and then used up by the customer. For more info, see Enable consumable add-on purchases.

There are two types of consumable add-ons:

  • Developer-managed consumable: Balance and fulfillment must be managed within your app. Supported on all OS versions.
  • Store-managed consumable: Balance will be tracked by Microsoft across all of the customer’s devices running Windows 10, version 1607 or later; not supported on any earlier OS versions. To use this option, the parent product must be compiled using Windows 10 SDK version 14393 or later. Also note that you can't submit a Store-managed consumable add-on to the Store until the parent product has been published (though you can create the submission in Partner Center and begin working on it at any time). You'll need to enter the quantity for your Store-managed consumable add-on in the Properties step of your submission.

Subscription

If your want to charge customers on a recurring basis for your add-on, choose Subscription.

After a subscription add-on is initially acquired by a customer, they will continue to be charged at recurring intervals in order to keep using the add-on. The customer can cancel the subscription at any time to avoid further charges. You'll need to specify the subscription period, and whether or not to offer a free trial, in the Properties step of your submission.

Subscription add-ons are only supported for customers running Windows 10, version 1607 or later. The parent app must be compiled using Windows 10 SDK version 14393 or later and it must use the in-app purchase API in the Windows.Services.Store namespace instead of the Windows.ApplicationModel.Store namespace. For more info, see Enable subscription add-ons for your app.

You must submit the parent product before you can publish subscription add-ons to the Store (though you can create the submission in Partner Center and begin working on it at any time).

Product ID

Regardless of the product type you choose, you will need to enter a unique product ID for your add-on. This name will be used to identify your add-on in Partner Center, and you can use this identifier to refer to the add-on in your code.

Here are a few things to keep in mind when choosing a product ID:

  • A product ID must be unique within the parent product.
  • You can’t change or delete an add-on's product ID after it's been published.
  • A product ID can't be more than 100 characters in length.
  • A product ID cannot include any of the following characters: < > * % & : \ ? + ,
  • Customers won't see the product ID. (Later, you can enter a title and description to be displayed to customers.)
  • If your previously-published app supports Windows Phone 8.1 or earlier, you must only use alphanumeric characters, periods, and/or underscores in your product ID. If you use any other types of characters, the add-on will not be available for purchase to customers running Windows Phone 8.1 or earlier.

Important

You can no longer upload new XAP packages built using the Windows Phone 8.x SDK(s). Apps that are already in Store with XAP packages will continue to work on Windows 10 Mobile devices. For more info, see this blog post.

Note

You must have an active developer account in Partner Center in order to submit apps to the Microsoft Store. All the users added to your developer account in Partner Center can submit EXE or MSI apps to the Microsoft Store. They can also modify all the existing EXE or MSI apps in Partner Center. The roles and permissions set for account users do not currently apply to EXE or MSI apps.

Notifications

Important

To ensure that you receive critical email notifications, you'll be required to verify your email address in Action Center. Go to My Preferences in Action Center to verify.

After publishing an app, the owner of your developer account is always notified of the publishing status and required actions through email and the Action Center in Partner Center.

In addition, you can add members in either developer or manager role within your developer account to receive same notifications or remove those who no longer need be notified.

To add or remove:

  1. On the Submission options page, look for the field of “Submission notification audience”
  2. Click “Click here” to open Notification audience overview page
  3. On the Notification audience overview page, add or remove audience

Note

  • The owner of your developer account is always notified and can’t be removed from the audience list.
  • The audience list is product specific and applied to all submissions of the product. To modify the notification recipients for a different product, follow the steps above for each product.
  • Add-on inherits parent product’s audience list and can’t be managed separately.