Free MB-820 Practice Test Questions and Answers (2026)

Last Update Check
View Mode
Q: 1

HOTSPOT You need to create the codeunit to read the POS terminal APIs. How should you complete the code segment? To answer, select the appropriate options in the answer area. NOTE; Each correct selection is worth one point. MB-820 question

Your Answer
24 comments in the community discussion
6
Why not ACCESS = PUBLIC for Box 1? Pretty sure that's a common trap, but in this extension context, INTERNAL is correct.
5
Super clear visual here, makes it easy to spot the right segment. ACCESS = INTERNAL and PROCEDURE READAPI().
Q: 2

DRAG DROP A company is implementing Business Central. The company has the following requirements for a report: • The report must be loaded for users in a specific location only. • Data entered in the request page must be validated before any further processing. • A filter must be defined for users based on the Department field defined in user setup. You need to implement the given requirements. Which triggers should you use? To answer, move the appropriate triggers to the correct requirements. You may use each trigger once, more than once, or not at all. You may need to move the split bar between panes or scroll to view content. NOTE: Each correct selection is worth one point.

Drag & Drop
23 comments in the community discussion
3
Yeah, this matches what I’ve seen in practice sets: Load the report for location = OnInitReport, Validate data = OnPreReport, filter by department = OnPreDataItem. The trap is mixing up when you need request page input vs system-level checks. Pretty sure this is right but open to debate!
3
Ugh, these trigger mapping questions are always awkward. Load the report for users in a specific location → OnInitReport, Validate data before processing → OnPreReport, Filter based on Department field → OnPreDataItem. Pretty standard as per exam reports-filters tied to data items always go OnPreDataItem. Di
Q: 3

HOTSPOT You create a query that contains a procedure to display the top customers. The procedure breaks at runtime. MB-820 question You need to fix the code. For each of the following statements, select Yes if the statement is true. Otherwise, select No. NOTE: Each correct selection is worth one point. MB-820 question

Your Answer
22 comments in the community discussion
6
Open() after SetFilter is the fix, not before. Lot of folks miss that trap. Had a similar question, picked the same way.
6
Yeah, you need to run Open() after SetFilter because in AL the filter only affects records before opening the query. Replacing with SetRange or wrapping with BEGIN..END wouldn't fix it. Pretty sure that's all the question wants, but open to correction.
Q: 4

HOTSPOT A company plans to customize its per tenant extension reports. The company has the following requirements for the customization: • Child data items must not be displayed on the request page for some master detail reports. • Selecting key filter fields takes users too much time. The customization must decrease the amount of time to select the fields. You need to optimize the report request page. Which actions should you configure? To answer, select the appropriate options in the answer area. NOTE: Each correct selection is worth one point. MB-820 question

Your Answer
30 comments in the community discussion
6
Pretty sure the right steps are set DataItemLinkReference and specify RequestFilterFields, saw similar logic pop up on a practice test.
6
Set the DataItemLinkReference property and specify RequestFilterFields. Saw this on a similar practice exam, matches what was expected.
Q: 5

DRAG DROP You need to configure telemetry for the SaaS tenant and test whether the ingested signals are displayed. Which three actions should you perform in sequence? To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order. MB-820 question

Drag & Drop
27 comments in the community discussion
7
Customer's App Insights -> Enter connection string in Admin Center -> Logs, check Traces table
5
Create App Insights in customer subscription → set connection string in Admin Center → inspect Logs/Traces. That's the right flow for this scenario if telemetry data stays with the customer. Swap to partner's sub only if ownership required, I think.
Q: 6

HOTSPOT You need to create the API page according to the requirements. How should you complete the code segment? To answer, select the appropriate options in the answer area. NOTE: Each correct selection is worth one point. MB-820 question

Your Answer
41 comments in the community discussion
6
Looks like DATAACCESSINTENT = READONLY and EDITABLE = FALSE is correct. DATAACCESSINTENT tells Business Central to use the read-only replica and EDITABLE disables all modifications, not just inserts. Pretty sure that's what Microsoft expects here but open to corrections.
6
DATAACCESSINTENT = READONLY, EDITABLE = FALSE
Q: 7
You need to define the tables used for the non-conformity entity. What should you use?
Options
34 comments in the community discussion
1
B, not C
1
Its B. This is where you define the main entity in Dynamics, not the details/history. Makes sense based on data structure here.
Q: 8
You are customizing Business Central by using Visual Studio Code. You create a project that will extend Business Central. The AL extension contains JSON files, which are automatically generated and are used to store configuration data For testing purposes, you plan to add the following changes to the files: • Specify that page 21 must be opened after publishing. • Enable debugging • Disable the capability to download the source code You need to add the configurations to the JSON files. Which two configurations should you add? Each correct answer presents a complete solution. NOTE: Each correct selection is worth one point.
Options
34 comments in the community discussion
1
C and E imo. The startupObjectId and resourceExposurePolicy settings controlling debugging/source download are meant to be in app.json, not launch.json. Launch.json is more for session-specific stuff, so these config changes have a lasting effect in app.json. Pretty sure that's what MS docs sa
1
Always get confused by where these resourceExposurePolicy configs go. Pretty sure C and E this time.
Q: 9

DRAG DROP A company plans to deploy Business Central. The company has the following deployment requirements: • Use the company hardware architecture to run the deployment. • Use sandbox environments to develop extensions. • Allow tenants to connect to Shopify with the standard connector. • Use Microsoft Power Automate to create a workflow that calls a business event. You need to identify the deployment type for each requirement. Which deployment types should you use? To answer, move the appropriate deployment types to the correct requirements. You may use each deployment type once, more than once, or not at all. MB-820 question

Drag & Drop
37 comments in the community discussion
6
Run on company hardware: On-premises, rest all: Online. Confident based on Business Central features.
5
Run on company hardware: On-premises, rest all: Online. No doubt for these mappings imo.
Q: 10

HOTSPOT You create a 'Contoso Post" procedure to send an http POST request in JSON format. You publish the procedure to your environment. You write the following procedure code: MB-820 question The procedure does not work as expected. You need to find and fix all errors in HTTP class usage. For each of the following statements, select Yes if the statement is true. Otherwise, select No. NOTE: Each correct selection is worth one point.

Your Answer
41 comments in the community discussion
6
Yep that matches the official pattern. Yes, Yes, No.
6
Should line 16 actually be ResponseMessage.Content.ReadAs(ResponseText)? Not sure if ReadAs used directly on ResponseMessage ever works in AL. Anyone seen this behave differently?
Q: 11

DRAG DROP A company has the following custom permission set: MB-820 question You need to make the permission set visible on the Permission Sets page. Which three actions should you perform in sequence? To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order. NOTE: More than one order of answer choices is correct. You will receive credit for any of the correct orders you select. MB-820 question

Drag & Drop
13 comments in the community discussion
6
Change Assignable to true, then publish, then add Permission Sets page to Permissions. That's the sequence here.
5
Change Assignable to true, publish the app, then add Permission Sets page permission. You need Assignable set before anything else or it won't show up, and publishing registers it in the environment. The last step (adding page permission) is needed so users can actually access/manage the set. ObsoleteState and Inclu
Q: 12

HOTSPOT You need to provide the endpoint to the PMS provider for the RoomsAPI page. How should you complete the API page endpoint? To answer, select the appropriate options in the answer area. NOTE: Each correct selection is worth one point MB-820 question

Your Answer
10 comments in the community discussion
8
Looks like the right picks are ALPINE, INTEGRATION, V2.0, ROOMS.
6
ALPINE, INTEGRATION, V2.0, ROOMSThat's the usual structure for BC custom API endpoints (publisher, group, version, plural entity). Pretty sure that's what PMS systems would expect from Dynamics. Someone correct me if I'm off.
Q: 13

Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution that might meet the stated goals. Some question sets might have more than one correct solution, while others might not have a correct solution. After you answer a question in this section, you will NOT be able to return to it. As a result these questions will not appear in the review screen. A company plans to optimize its permission sets. The company has the following permission sets: MB-820 question You need to provide the following implementation for a third permission set: • Create a new Permission Set C that is a composite of Permission Set A and Permission Set B. • Assign Permission Set C to a user. You need to ensure that the user has only read access to the Job table. Solution: Set the Excluded Permission Sets property to Permission Set B. Does the solution meet the goal?

Options
11 comments in the community discussion
5
Option B Excluding B doesn't take away the indirect insert from A, so 'only read' isn't enforced. Seen this catch people out on practice sets, so I don't think A is right here.
1
Guessing A
Q: 14

HOTSPOT You need to define the XML file properties for the accounting department. How should you complete the code segment? To answer, select the appropriate options in the answer area. NOTE: Each correct selection is worth one point. MB-820 question

Your Answer
10 comments in the community discussion
6
FORMAT: XML, DIRECTION: BOTH, TABLEELEMENT: "G/L ENTRY" is correct here. Fixed format is a trap, since the scenario talks about XML file properties for accounting data. Seen similar questions use the ledger table and ask for two-way sync. Anyone disagree?
3
I don't think it's Fixed format-has to be XML since we're dealing with XML file properties, and "G/L ENTRY" is the main table for this data. Import or Both could be confusing but Both fits the usual accounting flow.
Q: 15

DRAG DROP You need to configure the Subcontract Docs extension to translate the fields. Which three actions should you perform in sequence? To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order. MB-820 question

Drag & Drop
16 comments in the community discussion
5
E → F → G is the correct flow for AL multilanguage setup. You enable the translation feature in app.json, build to generate the .xlf, then translate it. I think people get thrown by CaptionML options but those aren't needed if you're using TranslationFile. Disagree?
4
Yeah, it's E then F then G. First you enable the TranslationFile feature in app.json, then build to make the Translations folder, then actually translate the .xlf file. That's how it's done for multilanguage support in AL. Pretty sure this is the right sequence but let me know if you think different.
Q: 16
You need to improve performance when ticketAPI is used to analyze the POS data. What should you do?
Options
8 comments in the community discussion
1
C not D. D just sets read intent on the API but won’t do much unless read scale-out (C) is enabled at the DB level. Seen similar questions, C always lines up as correct for performance bumps.
1
My vote is C, because enabling read scale-out shifts those heavy read operations to a replica and takes load off the main database. Makes sense for analytics APIs like ticketAPI. Unless I’m missing something obvious.
Q: 17
A company has a task that is performed infrequently. Users often need to look up the procedure to complete the task. The company requires a wizard that leads users through a sequence of steps to complete the task. You need to create the page to enable the wizard creation. Which page type should you use?
Options
11 comments in the community discussion
1
If the wizard is meant to guide users step-by-step (like a setup assistant), then A fits since NavigatePage supports that flow. But if this was more about displaying records or data entry forms, Card or List could come into play. Pretty sure it's A unless the task is just basic editing.
1
Option A, but is this for a setup/configuration process or just basic data entry? That could flip things.
Q: 18

HOTSPOT You need to define the properties of the comments field of the Non-conformity page. How should you complete the code segment? To answer, select the appropriate options in the answer area. NOTE; Each correct selection is worth one point. MB-820 question

Your Answer
12 comments in the community discussion
6
Multiline = true, ExtendedDatatype, RichContent. Multiline=false looks like a trick option here, comments usually need multiple lines. Agree?
5
Makes sense for a comments field.Multiline = true, ExtendedDatatype, RichContent
Q: 19

DRAG DROP You need to handle the removal of the Description field and the Clone procedure without breaking other extensions. Which three actions should you perform in sequence? To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order. NOTE: More than one order of answer choices is correct. You will receive credit for any of the correct orders you select. MB-820 question

Drag & Drop
11 comments in the community discussion
4
Description Pending, Clone Pending, then remove Description. Sequence matches what I've seen in the official docs and practice test. Good scenario to review if prepping for MB-820.
3
Description field Pending, Clone Pending, then remove Description is right. You have to warn consumers first before actually removing, per Microsoft's extension upgrade guidelines. Pretty sure this matches what they've shown in their docs, but always up for debate if anyone disagrees.
Q: 20

HOTSPOT A company plans to integrate tests with its build pipelines. The company has two Docket sandbox environments: SandboxA and SandboxB. You observe the following: • SandboxA is configured without the Test Toolkit installed. • SandboxB must be configured from scratch. The Test Toolkit must be installed in SandboxB during configuration. You need to configure the sandbox environments. How should you complete the cmdlets? To answer, select the appropriate options in the answer area. MB-820 question

Your Answer
14 comments in the community discussion
5
Nah, INCLUDETESTTOOLKIT is a trap for SandboxA. Install-TestToolkitToBcContainer is what you need for existing containers.
3
Install-TestToolkitToBcContainer for SandboxA, INCLUDETESTTOOLKIT for SandboxB
Question 1 of 20

What's covered in this practice questions set

1: Configure Microsoft Dynamics 365 Business Central · 18 questions

📖 About this Domain

This domain covers the foundational setup of a Dynamics 365 Business Central environment. You will perform initial configurations, including creating a company, managing security roles, and setting up core application modules. It establishes the base system upon which all other business processes are built.

🎓 What You Will Learn

  • You will learn to create and configure a new company, including setting up company information and defining fiscal periods.
  • You will learn to manage security by creating users, assigning permission sets, and configuring user groups.
  • You will learn to set up core application functionality, such as number series, posting groups, and dimensions.
  • You will learn to migrate data into Business Central using configuration packages and RapidStart Services.

🛠️ Skills You Will Build

  • You will build the skill to initialize a Business Central company and configure its chart of accounts using assisted setup.
  • You will build proficiency in implementing security models by managing user permissions and access controls.
  • You will build the ability to configure core financial and trade modules to meet specific business requirements.
  • You will build the technical skill to perform data migration for master records like customers, vendors, and items.

💡 Top Tips to Prepare

  • Get hands-on experience in a sandbox environment by creating a new company and running through the assisted setup wizards.
  • Focus on the logic of posting groups, understanding how general, specific, and inventory posting groups interact during transactions.
  • Practice creating and applying configuration packages to understand the data import/export process and table relationships.
  • Memorize the security hierarchy from individual permissions to permission sets and user groups for exam questions on access control.

2: Configure financials · 1 questions

📖 About this Domain

This domain focuses on the foundational setup of financial modules within Dynamics 365 Finance. It covers the configuration of the General Ledger, subledgers, and related financial components. You will establish the core financial structure for an organization.

🎓 What You Will Learn

  • You will learn to configure the General Ledger, including the chart of accounts, fiscal calendars, and journals.
  • You will learn to set up Cash and Bank Management, including bank groups, accounts, and payment methods.
  • You will learn to configure Accounts Payable and Accounts Receivable modules with posting profiles and parameters.
  • You will learn to configure Fixed Assets with depreciation profiles and set up basic budgeting with budget control rules.

🛠️ Skills You Will Build

  • You will build skills in configuring the financial core, including main accounts and financial dimensions.
  • You will gain proficiency in setting up subledger modules like AP, AR, and Cash and Bank Management.
  • You will develop the ability to configure asset lifecycle management through Fixed Assets and depreciation books.
  • You will build competence in establishing budget frameworks using budget models and budget control components.

💡 Top Tips to Prepare

  • Master the configuration and purpose of posting profiles for customers, vendors, and fixed assets.
  • Practice setting up journal names, controls, and workflows as they are critical for transaction processing.
  • Understand the hierarchy and impact of parameters set at the module level versus group or individual records.
  • Focus on the relationship between fiscal calendars, ledger setup, and financial period management.

3: Perform Business Central operations · 1 questions

📖 About this Domain

This domain covers the core transactional processes within Dynamics 365 Business Central. It focuses on the execution of daily operational tasks across sales, purchasing, and inventory management. You will learn the end-to-end document flows and their impact on the general ledger.

🎓 What You Will Learn

  • You will learn to process the complete sales cycle, from creating sales quotes and orders to posting shipments and invoices.
  • You will learn to manage the procure-to-pay process, including creating purchase orders, receiving items, and processing vendor invoices.
  • You will learn to handle financial transactions by applying customer and vendor payments and processing various journals.
  • You will learn to manage inventory levels and costs, including performing physical inventory counts and posting item journals.

🛠️ Skills You Will Build

  • You will build skills to execute the order-to-cash process, including managing customer records and posting sales transactions.
  • You will build skills to manage the procure-to-pay lifecycle, from vendor management to posting purchase invoices.
  • You will build proficiency in core financial operations, including cash management, bank reconciliation, and general journal posting.
  • You will build the ability to maintain inventory accuracy through item tracking, cost adjustments, and inventory valuation.

💡 Top Tips to Prepare

  • Gain hands-on experience by processing sales and purchase documents in a Business Central sandbox environment.
  • Understand the relationships between posting groups, such as customer, vendor, and inventory, and their effect on G/L accounts.
  • Master the document flow for sales and purchase orders, including the status changes from open to posted.
  • Practice using different journal types, like the cash receipt journal and payment journal, for efficient transaction processing.

Premium Access Includes

  • Quiz Simulator
  • Exam Mode
  • Progress Tracking
  • Question Saving
  • Flash Cards
  • Drag & Drops
  • 3 Months Access
  • PDF Downloads
Get Premium Access
Scroll to Top