MICROSOFT CERTIFICATION

MB-820 Dynamics 365 Business Central Developer Associate Practice Exam

Exam Number: 3132 | Last updated 16-Apr-26 | 803+ questions across 4 vendor-aligned objectives

The MB-820 Dynamics 365 Business Central Developer Associate certification validates the skills of developers who extend and customize Dynamics 365 Business Central using AL language and Visual Studio Code. This exam measures your ability to work with Dynamics 365 Business Central, AL Language, Visual Studio Code, API Pages, Business Central Extensions, demonstrating both conceptual understanding and practical implementation skills required in today’s enterprise environments.

The heaviest exam domains include Design and Develop Applications (30–35%), Extend Application Functionality (25–30%), and Manage Application Lifecycle (20–25%). These areas collectively represent the majority of exam content and require focused preparation across their respective subtopics.

Additional domains tested include Integrate with External Systems and Services (15–20%). Together, these areas round out the full exam blueprint and ensure candidates possess well-rounded expertise across the certification scope.

 Application design and development carry the most weight. Master AL object types (tables, pages, codeunits, reports), event subscriber patterns, and API page development for external integrations.

Every answer links to the source. Each explanation below includes a hyperlink to the exact Microsoft documentation page the question was derived from. PowerKram is the only practice platform with source-verified explanations. Learn about our methodology →

482

practice exam users

93.5%

satisfied users

88.5%

passed the exam

4/5

quality rating

Test your MB‑820 D365 BC Developer knowledge

10 of 803+ questions

Question #1 - Design and Develop Applications

A client needs a custom table in Business Central to store vehicle fleet maintenance records with fields for vehicle ID, service date, mileage, and service type.

Which AL object should the developer create?

A) An XML port for data storage
B) A table object with fields, keys, and field groups defined in AL
C) A codeunit with hardcoded arrays
D) A page object with embedded data fields

 

Correct answers: B – Explanation:
Table objects in AL define the data schema with fields, primary keys, and field groups that the BC engine stores and manages. Pages display data but do not define storage. Codeunits contain logic, not data definitions. XML ports handle data exchange, not storage. Source: Check Source

A client needs a custom table in Business Central to store vehicle fleet maintenance records with vehicle ID, service date, mileage, and service type.

Which AL object should the developer create?

A) An XML port object designed for data import/export operations rather than persistent data storage
B) A page object with embedded data fields attempting to store data without a backing table definition
C) A codeunit with hardcoded array variables storing maintenance records in application memory only
D) A table object defining the data schema with fields, primary keys, and field groups in AL code

 

Correct answers: D – Explanation:
Table objects in AL define the persistent data schema with typed fields, primary keys, and field groups that the Business Central engine stores and manages in the database. Pages display and interact with data but require a table to persist records. Codeunits contain business logic in memory that does not survive session termination. XML ports handle data exchange between systems but are not designed for primary data storage and retrieval. Source: Check Source

The developer needs a UI where fleet managers view and edit maintenance records in a sortable list with a details card from each row.

Which AL page types should be created?

A) A List page for browsing records in a grid and a Card page for individual record detail editing
B) A worksheet page for journal-style batch data entry without drill-through navigation support
C) A document page only designed for header-line structures like sales orders and invoices
D) A single report page displaying data in a print-formatted layout without editing capability

 

Correct answers: A – Explanation:
A List page displays records in a filterable, sortable grid, and a Card page shows individual record details when a row is selected — the standard BC browse-and-edit pattern. Report pages present data for viewing and printing but cannot serve as interactive data editing interfaces. Document pages follow header-line patterns designed for transactional documents, not simple master record maintenance. Worksheet pages are optimized for journal batch entry without the list-to-card navigation workflow. Source: Check Source

A developer must add a calculated field to Sales Header showing the sum of all line amounts. The field should not be stored in the database.

Which AL field type should be used?

A) A normal decimal field manually updated by a trigger recalculating on every line modification
B) A FlowField with CalcFormula summing related Sales Line amounts calculated at display time
C) A global variable displayed on the page but not persisted across sessions or shared with users
D) A text field displaying a number formatted as a string without any calculation capabilities

 

Correct answers: B – Explanation:
FlowFields with CalcFormula are calculated dynamically at display time without database storage, perfect for real-time aggregations from related tables. Normal fields with update triggers require explicit synchronization logic on every related record change. Text fields displaying formatted numbers lose mathematical functionality needed for totals and comparisons. Global variables exist only within a single session and cannot be shared, persisted, or reported across users. Source: Check Source

A client wants a custom action on the standard Customer Card that sends a welcome email when clicked. The developer must not modify the base page.

Which AL extensibility mechanism should be used?

A) Create a pageextension object adding the action to the Customer Card without base modification
B) Create a completely new Customer Card replacement page duplicating all standard functionality
C) Add the email action through SQL Server database triggers on the Customer table write events
D) Modify the standard Customer Card page source directly by editing the system application code

 

Correct answers: A – Explanation:
Pageextension objects add fields, actions, and logic to standard pages without modifying the base object, ensuring upgrade compatibility with future platform releases. Direct source modification blocks platform updates and creates merge conflicts. Full page replacement loses all future standard enhancements and requires maintaining a duplicate codebase. SQL triggers bypass the BC application layer, security model, and event subscription framework entirely. Source: Check Source

The developer needs custom validation when a Sales Order is released — checking that the shipping address is complete. The standard Release procedure must not be modified.

Which AL pattern should be implemented?

A) Override the Release codeunit directly by editing the base application module source code
B) Subscribe to the OnBeforeReleaseSalesDoc event and validate the address in the subscriber code
C) Add a manual text reminder to users asking them to verify addresses before clicking Release
D) Create a background batch job checking addresses hourly after orders have already been released

 

Correct answers: B – Explanation:
Event subscribers execute custom logic when standard events fire without modifying the publisher codeunit. OnBeforeReleaseSalesDoc fires before release, enabling validation and blocking if the address is incomplete. Direct overrides of base code block platform upgrades and require manual merge on each update. Manual text reminders have no technical enforcement and depend entirely on user compliance under workload pressure. Background batch jobs execute after release, missing the real-time validation gate entirely. Source: Check Source

A developer creates a report extension adding the customer tax registration number to the standard Sales Invoice report.

Which AL object type should be used?

A) Create an entirely new replacement report from scratch duplicating all standard functionality
B) A reportextension adding the tax field to the existing report dataset and layout definition
C) Modify the standard report object directly by editing the base application module source
D) Export the report to Excel after generation and add the tax field manually before distribution

 

Correct answers: B – Explanation:
Reportextension objects add data items, columns, and layout modifications to standard reports without full replacement, preserving all future base enhancements. New replacement reports lose standard improvements and double maintenance across platform versions. Direct base modification blocks upgrades and creates merge conflicts with each platform release. Manual Excel post-processing is a one-time workaround that requires human effort for every generated report. Source: Check Source

Three developers work on a BC extension. They need source control, branch management, and code reviews before merging.

Which development workflow should be established?

A) Use Git with Azure DevOps or GitHub featuring feature branches and pull request review gates
B) Deploy code directly to the production environment from each developer machine without review
C) Email AL source code files between developers and manually merge changes using text comparison
D) All developers work directly in a shared development database with no version control system

 

Correct answers: A – Explanation:
Git-based source control with branching and pull requests enables parallel development, code review quality gates, and merge conflict resolution with full change history. Shared databases without version control cause overwritten changes and lost work. Email-based file sharing lacks version history, branching, and automated merge capabilities. Direct production deployment bypasses all quality gates and risks breaking live business operations with untested code. Source: Check Source

The extension is ready for production. The team needs to publish through the Business Central Administration Center.

Which deployment process should be followed?

A) Email the compiled .app package file to Microsoft support requesting manual installation help
B) Deploy the extension by executing SQL scripts directly against the production tenant database
C) Upload the extension through the Administration Center or Extension Management with validation
D) Copy the compiled .app file directly to the server file system and restart the service tier

 

Correct answers: C – Explanation:
The Administration Center and Extension Management provide governed deployment with automatic dependency checks, data upgrade execution, and rollback capability on failure. Direct file copy bypasses the installation validation steps and dependency resolution process. SQL scripts cannot deploy AL extensions and bypass the entire application deployment framework. Microsoft support does not perform manual customer extension installations on behalf of tenants. Source: Check Source

An e-commerce platform needs to push new orders into Business Central in real time via an API.

Which AL approach should be used?

A) Share the database connection credentials directly with the e-commerce application development team
B) Use scheduled flat file exchange with hourly batch import instead of real-time API integration
C) Publish a custom API page exposing Sales Order creation as a RESTful endpoint with CRUD support
D) Create a custom REST endpoint entirely from scratch duplicating the existing BC web service stack

 

Correct answers: C – Explanation:
API pages in AL expose Business Central entities as RESTful endpoints with standard CRUD operations, enabling real-time external system integration with built-in authentication. Custom endpoints from scratch duplicate functionality that API pages provide natively. Sharing database credentials bypasses security, business logic validation, and audit trail generation entirely. Flat file batch import at hourly intervals does not meet the real-time push integration requirement. Source: Check Source

Get 803+ more questions with source-linked explanations

Every answer traces to the exact Microsoft documentation page — so you learn from the source, not just memorize answers.

Exam mode & learn mode · Score by objective · Updated 16-Apr-26

Learn more...

What the MB‑820 D365 BC Developer exam measures

  • Design and Develop Applications (30–35%) — Evaluate your ability to implement and manage tasks within this domain, including real-world job skills and scenario-based problem solving.
  • Extend Application Functionality (25–30%) — Evaluate your ability to implement and manage tasks within this domain, including real-world job skills and scenario-based problem solving.
  • Manage Application Lifecycle (20–25%) — Evaluate your ability to implement and manage tasks within this domain, including real-world job skills and scenario-based problem solving.
  • Integrate with External Systems and Services (15–20%) — Evaluate your ability to implement and manage tasks within this domain, including real-world job skills and scenario-based problem solving.

  • Review the official exam guide to understand every objective and domain weight before you begin studying
  • Complete the relevant Microsoft Learn learning path to build a structured foundation across all exam topics
  • Get hands-on practice in an Azure free-tier sandbox or trial environment to reinforce what you have studied with real configurations
  • Apply your knowledge through real-world project experience — whether at work, in volunteer roles, or contributing to open-source initiatives
  • Master one objective at a time, starting with the highest-weighted domain to maximize your score potential early
  • Use PowerKram learn mode to study by individual objective and review detailed explanations for every question
  • Switch to PowerKram exam mode to simulate the real test experience with randomized questions and timed conditions

Earning this certification can open doors to several in-demand roles:

Microsoft provides comprehensive free training to prepare for the MB-820 Dynamics 365 Business Central Developer Associate exam. Start with the official Microsoft Learn learning path for structured, self-paced modules covering every exam domain. Review the exam study guide for the complete skills outline and recent updates.

Related certifications to explore

Related reading from our Learning Hub