Dynamics 365 Business Central is actually the product with the large number of apps in the Microsoft’s AppSource marketplace (with more than 3500 apps currently published).
To submit an app for Dynamics 365 Business Central in the AppSource marketplace you need to create an offer and then pass two validations:
- Technical validation: https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/devenv-checklist-submission
- Marketing validation: https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/readiness/readiness-checklist-marketing
When passed, your app will be available in the marketplace and it can be installed directly from the marketplace in every customer’s tenant accordingly to the supported country availability you decide:
When you publish an app on AppSource, that app id is linked to your offer and an offer has its own associated markets.
Recently I talked with partners asking for other strange things like:
- Can I use the same app on different offers?
- Can I create a bundle of apps in an offer?
On AppSource, you cannot publish an app with the same appId on different offers. An extension has its own offer in the Marketplace. But you can use some “tricks” to reach your goals…
Publishing the same app on different offers
If you want to create two separate offers on AppSource for the same app A1 (for different marketing strategies etc) you can create an empty app (here called A2) with only the app.json file referencing the A1 app and a translation file for each of the language you want to support on the new offer. You can also add an Install codeunit if you need particular data initialization. That’s all:
When you submit A2, a new offer is created in AppSource and when the customer installs A2, the A1 app is installed automatically.
Publishing a bundle of apps in an offer
If you want to create an offer for targeting a bundle of apps (select the bundle and N apps will be installed at a special price) you can create an empty app (here called BUNDLE1) with only the app.json file referencing all the apps you want to have in the bundle (here called A1 and A2):
When you submit BUNDLE1, a new offer is created in AppSource and when the customer select to install BUNDLE1, all the apps referenced by BUNDLE1 will be installed automatically.
This is not officially documented, but if you’re in one of these scenarios, just remember these tips…