This post is part of the New Functionality In Microsoft Dynamics 365 Business Central 2023 Wave 2 series in which I am taking a look at the new functionality introduced in Microsoft Dynamics 365 Business Central 2023 Wave 2.
The twenty-fifth of the new functionality in the Development section is Sell Business Central apps through AppSource.
For years, AppSource publishers and customers have been waiting for the ability to transact Business Central apps via the AppSource marketplace. Due to the lack of such support, publishers have had to build their own custom sales and licensing support, adding unnecessary work and maintenance. Some publishers have even delayed entry to AppSource due to this gap.
Customers haven’t been able to see pricing options for apps directly in AppSource. Instead, they had to rely on external publisher price lists and contact the publisher directly or via a reseller. Since each publisher would have their own licensing and billing process, this added additional overhead for the customer or reseller.
Microsoft are excited to announce that with the 2023 release wave 2, transacting Business Central apps through AppSource will go live after having gone through both private and public previews. Initially, credit card payment or direct billing is supported along with per-user monthly or yearly subscription licensing managed through the Microsoft admin center.
Enabled for: Admins, makers, marketers, or analysts, automatically
Public Preview: Apr 2023
General Availability: Oct 2023
Feature Details
To enable transactability for an AppSource app, publishers opt in to selling through Microsoft on their existing offer in Partner Center.
When the transact option is enabled, publishers can define plans, or variants, of their offer. Plans can be used to sell various levels of functionality, such as Gold, Silver, and Bronze variants at different prices. Plans can also be used for waterfall pricing, which means selling the same level of functionality with a discount based on the number of users bought.
Each plan can specify the supported markets, and can have market-specific pricing. Monthly and yearly billing terms are supported, with the customer being able to choose automatic recurrence when they purchase in AppSource. A one-month free trial is also an option for publishers.
Plans are usually public and surface for all prospect customers on AppSource. However, they can also be made private, in which case they only surface for customers that the publisher has specified.
Once the publisher has defined the plans to sell, they can map those plans to functionality in their Business Central app. This is done through the Entitlement object, which links a license, such as the plan, with Business Central permission sets. Entitlements also allow mapping access to delegated admins, as well as publisher developers, so that these can run the app without any purchased license—for example, to demo, configure, test, or troubleshoot.
You can find examples of entitlements for Microsoft’s Converttemperature sample app in the BusinessCentralDemos repo.
Note that if the publisher already has existing customers on custom licensing, they shouldn’t opt in to using transactability and entitlements until they have implemented side-by-side support, which is the ability to fall back to their custom licensing for existing customers in a transition period. Otherwise, those existing customers would be locked out once they upgrade to the app version using entitlements. To implement side-by-side support, publishers must create an entitlement mapping Unlicensed
user to the required permission sets to run their custom licensing check.
When the app has been updated with entitlements and opted in to transact, it’ll surface in AppSource with the different plans and pricing, allowing customers to purchase directly in the AppSource marketplace.
Once a number of licenses have been purchased, they appear in the customer’s Microsoft 365 admin center, and can be assigned to individual users.
Note that even if a user has an assigned license (plan) that maps to permission sets through the entitlement for that license, the user must still be granted those permissions inside Business Central to have access. The license only defines the maximum permission to app functionality paid for, but users with the license might be granted less inside Business Central.
New Functionality In Microsoft Dynamics 365 Business Central 2023 Wave 2 |
Change Modification Limits for Triggering Flows and Bulk Updates |
Support Business Events in Business Central Connector for Power Automate |
Enable Specific Virtual Tables When You Connect to Dataverse |
Get Control Over How to View Power BI Embedded Content |
Availability Overview Helps You Calculate Quantities in Your Warehouse |
Configure The Right Level of Handling For Different Warehouse Operations |
Do financial Consolidations Across Environments in Multicompany Setups |
Edit in Excel on Item Journals and Warehouse Worksheets |
Get More Productive While Approving Time Sheets |
Get More Productive While Entering Time Sheets |
Include Approvals for Intercompany General Journals in Your Workflows |
Make Intercompany Transactions Across Business Central Environments |
Suggest the Next Step For Sales and Production Orders |
Sync Document and Posting Dates for Sales and Purchases |
Troubleshoot Shopify Integration Issues |
Usability Improves for Warehouse, Inventory, and Tracking |
Use Directed Pick and Put-away Suggestions in Basic Warehouse Configurations |
Use General Ledger Allocations to Distribute Costs and Revenue More Efficiently |
Complete Bank Account Reconciliation Faster With Copilot |
Get Marketing Text Suggestions with Copilot |
New Design for Report Language and Region Settings |
Advance Payment and a Posting Preview of Tax Documents – Czechia |
Direct Transfer – Czechia |
E-submission of VAT Return in Denmark |
Iceland Localization App – Delocalization |
Intercompany Posting Cues to the Accountant Role Center – Czechia |
New Intrastat – Czechia |
Registration and Notification Functionality for Denmark |
E-invoicing with NemHandel in Denmark |
Supporting More Countries and Regions |
Open Visual Studio Code From Web Client to Investigate or Troubleshoot Extensions |
Turn Off Data Analysis Mode on Pages and Queries |
Turn Off Indexes as a Partner |
Use the Built-in Rich Text Editor to Enter Data |
Assign More Granular Administration Rights |
Improved Update Release Processes |
Cancel Cloud Migration Replication Runs |
Digital Vouchers |
E-documents Core as a Global Solution |
Large Companies to Report Payment Times |
Modify Texts on the Welcome Banner and Skip Banner Intro State |
Set Initial Role Before First Sign-in for a Better First-Run Experience |
Enhancements to Excel Add-in |
Analyze, Group, and Pivot Data on Queries Using Multiple Tabs |
Discover Report and Data Analysis Content Easily |
Get Power BI Reports for Reporting and Data Analysis on Finance, Sales, and Inventory |
Data Loads Faster in the Server |
Faster Application Scenarios |
Pages Load Faster in Client |
Performance Gain Reducing Locks in the Database |
Add Existing Table Fields to Optimize Your Pages |
Get to Data Search From Anywhere in Business Central |
Distinguish Browser Tabs When Multitasking |
Share Readable Deep Links to Pages and Records |
Manage User Expectations with Selection Context-Based Actions |
Peek at Summarized Data From Editable Fields |
Search for Pages and Data in the Mobile App |
Use Actions to Navigate or Fix Errors From Inline Validation Dialog |
Updates to the Release Plan |
Power Pages Support via Business Central Virtual Tables on Dataverse |
Synchronize More Fields in Your Integration with Dataverse and Dynamics 365 Sales |
Consolidated Power Automate Flow Creation from Business Central Templates |
Get List of Companies Using Business Central Connector in Power Automate |
Simplified Power Automate Approval Flow Experience |
Create Power Automate Flows that Dynamically Support Different Companies |
Business Central Virtual Tables Fully Supported on Microsoft Dataverse |
Relate Native and Virtual Tables to Expose More Business Central Data in Dataverse |
Include Only Open Entries on Customer Statements |
Adjust Exchange Rates Easily, Replace the Built-in Batch Job |
More Control Over General Journal Approvals |
Use Different General Ledger Accounts for Payables, Receivables |
Add More Columns to Pages for Better Insight |
Availability Overview Helps You Calculate Quantities in Your Warehouse |
Block Item Variants |
Identify and Track Items Easier with Item References |
Improved Processes for Inventory Counts and Adjustments |
Navigate Easier Between Order, Receipt, and Invoice Documents |
Print and Scan Barcodes |
Receive More Items Than Ordered by Using Inventory Put-away Documents |
Generate a Customer Statement Only With Open Entries |
Responsibility Centers Are Supported for Advance Payments in Czechia |
Easier Management of System Application Permissions |
Get the AL Language Extension in Prerelease Versions on Visual Studio Code Marketplace |
Find All References Now Works on Triggers, System Methods, and Trigger Events |
Get Inlay Hints in Source Editor for AL Method Parameters and Return Types |
Get Inlay Hints in Source Editor for AL Method Parameters and Return Types |
Hover Over Label Variable to See Text String Value |
Set New Output Folder Setting for Storing App Files at AL Project Build |
Choose Between More Sampling Intervals for Snapshot and In-client Profiling |
Get IntelliSense for Adding Variables in Visual Studio Code AL Debugger Console |
Get Smarter Method Signature Recommendations in IntelliSense |
Set the Default Folder Location for New AL Projects |
Track Source and Build Metadata on Extensions |
Use SecretText Type to Protect Credentials and Sensitive Textual Values From Being Revealed |
Document Your Extensions With the ALDoc Tool for Partners |
Segment AL Code and Reduce Naming Conflicts with Namespaces |
Show List of Keys While Working on AL Code |
Use the AL Language Extension for Linux in Preview |
Provide Queries for Users to do Ad Hoc Data Analysis Across Tables |
Add a New FieldGroup to an Existing Table |
Add Teaching Tooltips on Queries and Report Request Pages |
Get Syntax Highlighting for AL in Azure DevOps |
Sell Business Central Apps Through AppSource |
AppSource ISV Publishers Can Preview Their AppSource Apps With Select Customers |
Extend General Ledger Posting Aggregations |
Define multi-worksheet datasets for Excel reports |
Include or Exclude Tables From Cloud Migration |
Delete Data from Uninstalled Extensions as an Admin |
Automatically Update AppSource Apps With Minor Updates |
Transfer Environments Between Microsoft Entra Tenants |
Control Partner Access Per Environment |
Use Drop Shipments for Triangular Intrastat Trade |
Start Faster with Refreshed and Enhanced Setup Data |
VAT Posting in General Ledger Setup |
Demo Tool and Data for Service Scenarios |
Analyze, Group, and Pivot Data on Lists |
Share a Data Analysis With a Co-worker |
Synchronize Multiple Business Central Companies With the Same Dataverse Environment |
New Operational Limits on Scheduled Tasks and Web Requests Improve Throughput |
Service-to-Service Apps and Device License Users Can Schedule Tasks |
Mark Fields as Read-only When Customizing UI |
Scan barcodes with Business Central mobile app for iOS and Android |
Access Worksheet Pages From Mobile Phones |
Use Virtual Tables to Expose More Business Central Data in Dataverse |
Reverse a Customer and Vendor Ledger Entry with a Realized Gain or Loss Entry |
Use General Ledger Account Revaluation for More Accurate Financial Statements |
Use Standard Terminology for Project Management |
Use Currencies When Posting Employee Transactions |
Chat with Copilot |
Improved Data Upgrade Troubleshooting for Dynamics GP Migration |
Retain Permissions When Enabling Cloud Migration |
Detect Invalid Cloud Migration Configurations with Proactive Warnings |
Multiple VAT Numbers per Customer |
If there is a topic which fits the typical ones of this site, which you would like to see me write about, please use the form, below, to submit your idea.