Skip to content

Business Central Access for Data Foundation

Data Foundation brings data from every ERP system and instance you connect into one Common Finance Model, and Microsoft Dynamics 365 Business Central is one of the ERPs it reads directly. The connection uses a Microsoft Entra ID application with client credentials, a read-only permission set, and a few page objects published as web services. This page is for the Business Central administrator who sets that up, and for the PlaidCloud user who asks them to.

PlaidCloud only reads data. Nobody sends a client secret by email.

On the project’s Foundation tab, choose Create a new connection under Business Central connection. The form shows the full request. Click Copy request to paste it into your own message, or Email request to open it in your mail program with the subject “Read-only Business Central access for PlaidCloud (Microsoft Entra ID, client credentials).”

What the Business Central Administrator Sets Up

Section titled “What the Business Central Administrator Sets Up”
  1. Register an app in Microsoft Entra ID. Under App registrations > New registration, add a client secret, and note the Directory (tenant) ID, the Application (client) ID and the secret.

  2. Add the app in Business Central. Open Microsoft Entra Applications, add the application, set its state to Enabled, and give it the permission sets D365 READ and D365 BASIC for every company you report on. Do not give it a write permission set.

  3. Publish page objects as web services. Under Search > Web Services > New, publish these page objects with exactly these Service Names and Published ticked. The standard API doesn’t carry their fields:

    Page Service Name Notes
    20 G/L Entries GLEntries
    16 Chart of Accounts GLAccounts
    100 Accounting Periods AccountingPeriods
    537 Dimension Values DimensionValues
    240 Business Units BusinessUnits
    605 IC Partner List ICPartners
    5802 Value Entries ValueEntries Cost of goods sold; optional
    120 G/L Budget Entries GLBudgetEntries Budgets; optional
    Statistical Ledger Entries StatisticalLedgerEntries Statistical drivers; optional
    118 General Ledger Setup GeneralLedgerSetup Shortcut Dimensions 3 to 8; optional
    479 Dimension Set Entries DimensionSetEntries Shortcut Dimensions 3 to 8; optional
  4. Tell the PlaidCloud user two choices: the source code your audit adjustments post under (PlaidCloud assumes ADJUSTMENT), and which dimension is your department (PlaidCloud assumes Global Dimension 1, named DEPARTMENT).

The administrator sends Entered in PlaidCloud as
The Directory (tenant) ID Directory (tenant) ID
The environment name, for example production Environment name
The Application (client) ID Application (client) ID
The client secret Client secret, entered through the form, not by email
The name of the dimension that is your department The department_dimension system setting
The companies PlaidCloud may read Chosen under Companies in PlaidCloud (at least one)

Companies that are consolidation companies go under the consolidation_companies system setting, so their entries aren’t counted as a company’s activity. Exchange rates come from one company: name it in the rate_company system setting, or PlaidCloud uses the first company.

Back in PlaidCloud, enter the values and click Test connection. Each dataset shows as Readable, Missing permission or Error:

Dataset What it needs
Entities, Chart of accounts, Customers, Products, Currency rates, Trial balance API access (permission set D365 READ)
Fiscal calendar The AccountingPeriods web service
Departments The DimensionValues web service
General ledger The GLEntries web service
Sales lines, Budget, Allocation drivers Optional

When a dataset is missing, the test says which permission or web service to add. Ask the administrator to add it and test again. Sales lines, Budget and Allocation drivers are optional: an environment that doesn’t use them still loads everything else.