Build - ISV Getting Started Guide
Build - ISV Getting Started Guide
Page 1
Introduction
Introduction
The following Getting Started Guide is designed to walk ISVs new to the Dy-
namics 365 platform through the necessary steps to get started building
standalone business applications on the Common Data Model using the Pow-
er Platform.
How to build
The third section walks through how to build a standalone app on the Mic-
rosoft Dataverse using the Power Platform.
Resources
Lastly, we’ve included links to additional resources to help you find answers
to questions and provide additional guidance for when you’re ready to move
beyond the basics.
Let’s first take a look at the three programming models and define what Build
means.
Page 2
Introduction
Programming models
While our Business Applications Platform is made up of best of breed applica-
tions—including Finance and Operations, Customer Engagement, Office 365,
and LinkedIn—the true power of the platform is in how it all works together
through our Microsoft Dataverse.
The Microsoft Dataverse is the shared data language used by business and
analytical applications. It consists of a set of a standardized, extensible data
schemas published by Microsoft and our partners that enables consistency of
data and its meaning across applications and business processes.
This means that when you’re interacting with your data—whether reading or
writing—you are doing so from a common data source. There is no more ty-
ing together disparate systems and retrofitting data connections. It all works
seamlessly through the Microsoft Dataverse.
This model unlocks three key opportunities for ISVs who wish to leverage our
Business Applications Platform for their business: Build, Extend, and Connect.
POWERAPPS PRICING
Build
Build standalone apps on the Microsoft Dataverse
ISVs can build standalone business apps directly on the Microsoft Dataverse
using the Power Platform (i.e., PowerApps, Power BI, and Power Automate).
Extend
Extend the functionality of Dynamics 365 business applications
ISVs can extend the functionality of a Dynamics 365 business applications,
such as Dynamics 365 for Sales and Dynamics 365 for Finance and Opera-
tions. Extend scenarios include creating industry or vertical customizations
to our first-party apps.
Connect
Connect to first-party apps from external apps
ISVs can connect their external solutions to first-party Dynamics 365 apps or
the Power Platform.
Page 3
Contents
5
Prerequisites
Sign up for Power Platform
Become a Microsoft partner
Register as a publisher
8
Understanding the Power Platform
Parts of the Power Platform
Microsoft Dataverse
Model-driven apps vs. Canvas apps
Ways to build PowerApps
14
Building your application solution
Create a canvas app
Create a model-driven app
Do more with Power BI and Power Automate
21
Package and publish
Create a managed solution package
Validate your code
Create a new offer
Submit for publication
Publish your solution
Market and sell
29
Additional resources
Page 4
Prerequisites
Getting started
• Sign up
Become a partner Step 1 Step 2
• for Power
Become a publisher Become a Register as a
• Platform
Become a seller Microsoft publisher
• • Register
Other for
recommended partner
programs • Register in Partner
a PowerApps • Create a Microsoft Center
account work account
• Join the Microsoft If you are already a
Partner Network Microsoft Partner
with Partner
• Set up your Center access,
Partner Center you can skip this
account section.
Page 5
Prerequisites
Prerequisites
Before you publish, market, and sell your first apps, there are a few steps you
must take to get set up as a Microsoft Partner. These include joining the Micro-
soft Partner Network (MPN) and getting registered in the programs that enable
you to publish, market, and sell your apps.
1 Become a partner
Becoming a Microsoft partner gives you access to the Microsoft resources
needed to build, market, and sell your apps. While you don’t need to be a
Microsoft partner to begin developing your apps, all of the steps below are
required to gain access to the programs that enable you to publish, market,
and sell your apps.
Page 6
Prerequisites
Set up your Partner Center account
Once you have joined the Microsoft Partner Network (MPN), you can set up Learn how to manage your
your Partner Center (PC) account. Your PC account provides you with access to Partner Center account.
pricing information, tools and services, and enables you to manage admin cre-
dentials for your company’s work account. PC is also where you can purchase DOCUMENTATION
or renew subscriptions to Microsoft Action Packs, create a business profile
to receive and manage sales leads from Microsoft, and see if you qualify for
co-selling opportunities.
2 Register as a publisher
Registering as a publisher allows you to sell your solutions on AppSource, the
marketplace that gives ISVs access to more than 100 million commercial users.
To begin the registration process, you must complete these steps. Shortly
thereafter, one of our team members will follow up to help you complete your
registration.
Page 7
Understanding the
Power Platform
Parts of Microsoft Model-driven Ways to build
the Power Dataverse apps vs. PowerApps
Platform Canvas apps • Check out some
• PowerApps • Model-driven sample apps
Page 8
Understanding the
Power Platform
Parts of the Power Platform
Power Platform enables business to create custom solutions—from simple to
complex—through familiar, intuitive technology. Power Platform enables faster
data collection, surfaces real-time insights, and empowers users to make in-
formed, actionable decisions. It also enables users to do three key actions on
data that help them drive business: gain insights from data (Analyze), drive in-
telligent business processes (Act) via apps they build, and automate the process-
es (Automate). Analyze, Act, and Automate — all done with Microsoft Dataverse,
Power BI, PowerApps, and Power Automate, all working together atop data to
help everyone.
Microsoft Power Platform is comprised of four products: Power Apps, Power Au-
tomate, Power BI, and Power Virtual Agents. It also has two add-ons: AI Builder
and Power Apps portals—designed to help you build, extend, and connect apps
for Dynamics 365 and Office 365.
Power platform
Data
PowerApps
Power BI Flow PowerApps
Connectors
PowerApps
PowerApps sits at the center of the Power Platform. PowerApps is a collection
of services, apps, and connectors that work together to let you build applica-
tions, ranging from simple no-code mobile apps used to view and update your
data to fully featured software that extends the functionality of our Dynamics
365 solutions. With PowerApps, you do much more than just view your data.
You can act on your data and update it anywhere and from any device. Sign up
for a free trial version and sign in and explore samples and templates.
Building blocks
To create, share, and administer apps, you’ll use these sites:
1. make.powerapps.com: In the web portal, you can open apps, specify the type
of app that you want to create, and create data connections and Power Auto-
mates. To use this site, you’ll need to log in using your organizational account.
2. PowerApps Studio: Using PowerApps Studio, you can build apps by con-
figuring user interface (UI) elements and using Excel-like formulas.
Page 9
Understanding the
Power Platform
3. PowerApps Mobile: With PowerApps Mobile, you can run your apps on
Microsoft Windows, Apple iOS, and Google Android devices.
4. PowerApps admin center: In the admin center, you can define environ-
ments and data policies.
Power BI Power BI
Power BI enables users to build sophisticated, visual dashboards from their
data. As part of the Power Platform, Power BI dashboards components can eas-
ily be embedded into PowerApps solution, and PowerApps components can
be embedded into Power BI dashboards. Sign in here and explore templates. Learn how to develop
custom connectors.
Power Virtual Agents
Power Virtual Agents improves the authoring experience with list variables, DOCUMENTATION
topic suggestions from bot sessions, adaptive cards, and more. Also included
is Power Automate integration with better error handling and new topic trig-
ger management in order to improve your bot’s triggering capabilities.
Page 10
Understanding the
Power Platform
AI Builder
This add-on introduces AI functionalities in preview as well as form processing
improvements. Capabilities include region availability and signature detection
in form processing to detect if a signature is present at a specific location in a
document.
Microsoft Dataverse
Microsoft’s Business Applications—including Dynamics 365, Office 365, and
Power Platform—are all built on top of our Microsoft Dataverse. Dual-write
provides near-real-time interaction between customer engagement apps and
Finance and Operations apps. Microsoft Dataverse for Apps lets you securely
store and manage data used by business applications. Data within Microsoft
Dataverse is stored within a set of records called entities. An entity is a set of
records used to store data, similar to how a table stores data within a database.
Microsoft Dataverse includes a base set of standard entities that support com- Learn more abut the
mon business scenarios that connect to Dynamics 365 application data. You Common Data Model (CDM).
can also create custom entities specific to your organization and populate
them with data that you import from lists in SharePoint, Excel, or PowerQuery. DOCUMENTATION
App makers can then use PowerApps to build rich applications using this data.
Dynamics 365 applications, including Dynamics 365 for Sales, Field Ser-
vice, and Customer Service use Microsoft Dataverse for Apps to store and
secure data used by the applications. This means you can build apps us-
ing PowerApps and Microsoft Dataverse for Apps directly against your
core business data already used within Dynamics 365 without the need
for manual integration. Dynamics 365 for Finance and Operations and Dy-
namics 365 for Retail currently require configuration of the Data Integrator
to make your business data available within Microsoft Dataverse for Apps.
Model-driven apps
Model-driven app design is an approach that focuses on adding dashboards,
forms, views, and charts to your apps. With little to no code, you can build
apps, ranging from simple to very complex solutions.
Page 11
Understanding the
Power Platform
Canvas apps
Canvas apps allow users to design and build business apps without writing
code in a traditional programming language. The app can be designed by
dragging and dropping elements onto a canvas, just as you would design a
slide in PowerPoint. Excel-like expressions can be used for specifying logic and
working with data, and apps can integrate business data from a wide variety of
Microsoft and third-party sources.
In canvas apps, the designer has total control over the app layout. In mod-
el-driven apps, on the other hand, much of the layout is determined by the
components you add. The emphasis is more on quickly viewing your business
data and making decisions than on intricate app design.
Page 12
Understanding the
Power Platform
Create an app from a data source
A great way to get started is to generate an app from your own data. Just
point PowerApps at the data source of your choice, and watch as PowerApps
automatically builds a three-screen app. Data sources may include Microsoft
Dataverse, SharePoint, and Excel.
The easiest way to learn about PowerApps is to start with a sample app, open
a template, or connect to your data source and have PowerApps generate the
app for you.
Page 13
Building your
application
Create a canvas app Create a model- Do more with
• Create a canvas app driven app Power BI and Power
• Create accessible canvas • Building blocks of model- Automate
apps driven apps • Power BI
• Install the app on your • Design phases • Power Automate
device • Create your model-driven
• Customize your app app
• Use solution checker to fix • Customize your app
errors and make accessible • Sharing model-driven apps
apps
• Managing the properties of
• Sharing canvas apps a model-driven app
• Manage a canvas app
Page 14
Building your
application
Create a canvas app
Create a canvas app
1. Connect to a data source
1. Go to PowerApps and sign in with your organizational account.
2. In the left pane, select Apps.
3. Select Create an app.
4. Select your data source.
5. Under Connections, select OneDrive for Business.
6. Select Create and choose your data source.
7. Select Connect.
PowerApps generates the app by inspecting your data and matching it with Generated apps are always
PowerApps capabilities so that you get a working app as a starting point. based on a single list or table,
but you can add more data to
2. Explore the generated app the app later.
Your new three-screen app opens in PowerApps Studio. On the left, you’ll see
the Screens pane. In the upper-right corner of the screens pane, select the
thumbnail view. Select the thumbnail for each screen to view the controls on
that screen.
Here is the main development window for PowerApps Studio. Select Play in
the upper-right corner to try out the app. You’ll see that it includes all the data
from the list and provides a good default experience.
All apps generated from data have the same set of screens that you can view
from the Thumbnail pane:
• Browse screen: This screen appears by default. In it, you can browse, sort,
filter, and refresh the data from the data source. In the browse screen, you
add items to the data source by selecting the plus sign (+).
• Details screen: Select an item in the browse screen to open the details
screen, which shows all details about an item. In this screen, you can open
an item for editing or delete it.
• Edit/create screen: In this screen, you can edit an existing item or create one.
Page 15
Building your
application
Page 16
Building your
application
Sharing canvas apps
After you build a canvas app that addresses a business need, you’ll want to
share your app. First, specify which users in your organization can run the app
and which can modify and even re-share it. Then, specify each user by name
or specify a security group in Azure Active Directory. If everyone would benefit
from your app, specify that your entire organization can run it.
Design phases
1. Model your business data
Model-driven design uses metadata-driven architecture so that designers can
customize apps without writing code. To model business data, you determine
what data the app will need and how that data will relate to other data. Meta-
data means data about data, and it defines the structure of the data stored in
Microsoft Dataverse for Apps.
Page 17
Building your
application
2. Define your business processes
Defining and enforcing consistent business processes is a key aspect of mod-
el-driven app design. Consistent processes help ensure that your app users
can focus on their work and not worry about having to remember to perform
a set of manual steps. Processes can be simple or complex, and they often
change over time.
Page 18
Building your
application
2. Add components to your app
You add components to your app by using the App Designer.
1. Select the Open the Site Map Designer arrow to open the site map designer.
2. In the site map designer, select New Subarea, and then, in the right pane on
the Properties tab, select the following properties:
• Type: Entity
• Entity: Account
3. Select Save And Close.
4. In the App Designer, select Forms, and then, in the right pane under Main
Forms, select the Account form.
5. In the App Designer, select Views, then select the following properties:
• Active Accounts
• All Accounts
• My Active Accounts
6. In the App Designer, select Charts, then select the Accounts by Industry
chart.
7. On the App Designer toolbar, select Save.
Page 19
Building your
application
Managing the properties of a model-driven app
App properties define important details about the app, like its title or URL. You
define app properties when you create an app. You can change and manage
those properties in the app designer.
Power Automate
Browse the Power Automate documentation to learn more about building
connectors and automating workstreams.
Page 20
Package and publish
your solution
Step 1 Step 2 Step 3
Create a managed Validate your code Create a new offer
solution package • QA your code • Create a new offer in
• Export solution to Package • Validate your PowerApp Partner Center
Deployer
• Create a package using
Package Deployer
• Upload package to Azure
Page 21
Package and publish
your solution
Publish your PowerApp to AppSource
Once you’ve created your application and are ready to share it with the world,
there are just a handful of steps you must complete to publish it on AppSource.
Note: For software that operates outside the application, use traditional methods
to package and install your application, such as an installer program. If your ap-
plication consists only of Dynamics 365 solution components, it can be import-
ed directly into Dynamics 365. You won’t have to create an installer program.
However, if your extensions include a combination of Dynamics 365 solution
components and external components, you’ll need an installer.
Page 22
Package and publish
your solution
Create a package using Package Deployer
Using Package Deployer, create a package (.zip) with your assets. The Package
Deployer creates a solution package with the structure needed to submit to
Microsoft for certification.
Creating a package involves creating a project using the template, adding your
files to the project, updating the HTML files, specifying the configuration val-
ues for the package, and defining custom code for your package.
Page 23
Package and publish
your solution
Additionally, we recommend that you follow these best practices when build-
ing your app, as it can expedite the certification process.
Page 25
Package and publish
your solution
Steps to publish
1. Automated validation: This step includes Test Drive data validation (<5
min), Test Drive provisioning (<30 min), and Lead management validation
and registration (<15 min).
2. Certification: This step leads to manual validation (<2 business days).
3. Preview creation: Preview creation (<1 hour).
4. Publisher sign-off
5. Publish: This step consists of Test Drive data validation (<5 min), Test
Drive provisioning (<30 min), Lead management validation and registration
(<15 min), and Final publish (<30 min).
You need to recertify your apps every 6 months to keep them live on AppSource.
Follow the steps below to certify/recertify your application to AppSource.
Page 26
Package and publish
your solution
• For Dynamics 365 for Finance and Operations
6 Monitor performance
Monitor performance and collect leads
Within Partner Center (PC), under the Commercial Marketplace Analyze tab,
you can view app performance. You will also receive leads from users who reg-
istered for Test Drive or Trial, requested to be contacted through the Contact
me form, or opted to share their information by selecting Get it now.
ISV Studio
ISV Studio is designed to become the go-to Power Platform destination for In-
dependent Software Vendors (ISVs) to monitor and manage their applications. Learn more about our
ISV Studio provides a consolidated cross-tenant view of all the applications ISV app management.
ISVs are publishing on AppSource. It helps the ISVs monitor and support their
published apps with the help of insights into installation error messages, num-
ber of install attempts (Success vs Failures) by tenant name, tenant and instance APP MANAGEMENT
locations, prod vs sandbox installations, package versions by tenants, etc.
GTM SERVICES
Page 27
Package and publish
your solution
ISV Cloud Embed Program
If you have built or intend to build a vertical/industry-focused solution on Learn more about the
top of Dynamics 365, or a horizontal solution on PowerApps, and publish on Microsoft ISV Cloud
AppSource, the Microsoft ISV Cloud Embed program simplifies app develop- Embed Program.
ment time, lowers costs, and helps your business grow. The program allows
ISV partners to focus on continuous innovation and rapidly build business ap-
plications by extending Dynamics 365 applications or building on PowerApps; HANDBOOK
benefit from a growing community of Office 365 and Dynamics 365 custom-
ers through AppSource; receive critical go-to-market support; and delivers in-
creased benefits culminating in co-sell support from one of the world’s largest
enterprise salesforces.
It is important to note that you can only sell the Embedded SKUs with your IP
as a Unified Solution; you cannot sell the Embedded SKUs separate from your
IP, and you will have to give one price point to the entire Unified Solution.
Getting started
Any ISV that builds qualified, finished applications can participate in the ISV ISV Cloud Embed
Cloud Embed Program at different levels with different benefits based on the sign-up form.
partner’s preference. To learn more about the program, please review the ISV
Cloud Embed Handbook. To become a part of this program and guarantee a
SIGN-UP FORM
rich customer experience, please sign up through this simple online form.
Page 28
Additional resources
Page 29
Additional
resources
Glossary
Azure: Extensibility platform that allows ISVs to build, test, deploy, and man-
age applications within Microsoft PowerApps.
Canvas App: Microsoft PowerApps allows you to design and build a business
app from a canvas without writing code in a traditional programming language
such as C#. Design the app by dragging and dropping elements onto a canvas,
just as you would design a slide in PowerPoint. Create Excel-like expressions
for specifying logic and working with data. Build apps that integrate business
data from a wide variety of Microsoft and third-party sources. Share your app
so that users can run it in a browser or on a mobile device and embed your
app so that users can run it in SharePoint, Power BI, or Teams. Building from a
canvas gives you maximum flexibility over the appearance of the app.
Power BI: Self-service business intelligence capabilities, where end users can
create reports and dashboards by themselves, without having to depend on IT
staff or database administrators.
Page 30
Additional
resources
Additional resources
Best practices and common use cases
Community content: Community apps gallery | Working with data | Design discussion
Real world solutions using PowerApps: Video
UX/UI design tips: Video | UX patterns | Managing fonts and colors
Customize list forms in SharePoint with PowerApps: Blog post | Demo | Documentation
Access web apps migration to PowerApps: Whitepaper
Approval workPower Automates: Blog post | Documentation | Guided learning
Using the on-premises gateway: Overview | Installation and FAQ | Proxy configuration
Build an offline app: Blog post
Creating dialogs in PowerApps: Blog post | Video
Display a map using the Image control: Step-by-step walkthrough | Video
Send an email from your PowerApps app: Video
Connect to Microsoft Cognitive Services: Video
Implement role-based security: Blog post
Build a customized interactive calendar: Step-by-step guide
Notify user that new data is available: Step-by-step guide | Push notifications feature
Deep link into an app using URL parameters: Step-by-step guide
Audit scenario solution: Blog post from community member
Performance considerations when working with PowerApps: Blog post
Learning resources
PowerApps latest feature updates: Blog post | Release notes
Power Automate latest feature updates: Blog post | Release notes
Browse presentations from the Ignite 2018 conference: Blog post with curated links to relevant sessions
Browse Microsoft Business Applications Summit 2018 conference: Blog post with curated list to relevant sessions
Browse How-to videos: PowerApps video gallery | Power Automate Webinars and Videos gallery
Get expert help from partners: Partners
Take up additional Labs Power Platform Labs and Challenges
SharePoint welcomes PowerApps and Power Automate
Customizing SharePoint forms using PowerApps: Ignite presentation
Introduction to Microsoft PowerApps for Access web apps developers
Stay connected
Ways to collaborate with the PowerApps team: Blog post
Stay updated: Product team blog | Webinars
Community sites: Forums | Community blog | Best practices and app gallery
Get support: Blog post | Support page | Submit an idea
Other tools
Microsoft App in a Day Lab
PowerApps and Power Automate Learning Resources
Page 31
Additional
resources
Getting Started Guides
Check out our other Getting Started Guides.
Page 32
Microsoft Dynamics 365
Disclaimer
© 2019 Microsoft. All rights reserved.
This document is provided “as-is.” Information and views expressed in this document, including URL and other Internet
Web site references, may change without notice. You bear the risk of using it. Some examples are for illustration only
and are fictitious. No real association is intended or inferred.
This document does not provide you with any legal rights to any intellectual property in any Microsoft product. You may
copy and use this document for your internal, reference purposes.
Page 33