Skip to content

Dynamics 365 Finance and Operations Access for Data Foundation

Data Foundation brings data from every ERP system and instance you connect into one Common Finance Model, and Dynamics 365 Finance and Operations is one of the ERPs it reads directly. The connection uses a Microsoft Entra ID application with a client secret for the master data, and your Fabric (Synapse) Link SQL endpoint for the general journal. This page is for the Dynamics 365 administrator who sets that up, and for the PlaidCloud user who asks them to.

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

On the project’s Foundation tab, choose Create a new connection under Dynamics 365 Finance and Operations 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 Dynamics 365 Finance and Operations access for PlaidCloud.”

What the Dynamics 365 Administrator Sets Up

Section titled “What the Dynamics 365 Administrator Sets Up”
  1. Register an application in Microsoft Entra ID for PlaidCloud, with a client secret. Note its Application (client) ID, the Directory (tenant) ID and the secret.

  2. Map the application to a user. In Dynamics 365, under System administration > Setup > Microsoft Entra ID applications, add the client ID and map it to a user with a role that can view, for every legal entity you want to load:

    • General ledger: legal entities, fiscal calendars, main accounts, financial dimension values, exchange rates
    • Accounts receivable: customers and customer invoice lines
    • Product information management: released products
    • Inventory management: on-hand and inventory transactions (optional)
    • Budgeting: budget register entries (optional)
  3. Set up Fabric Link for the general journal. General journal lines are read from your Fabric (Synapse) Link SQL endpoint, not from the OData service. Confirm that Fabric Link is on for these tables, and create a read-only SQL login for PlaidCloud on that endpoint:

    • generaljournalaccountentry
    • generaljournalentry
    • fiscalcalendarperiod
    • dimensionattributelevelvalue, with one row per dimension value of each financial dimension combination and the name of its dimension
The administrator sends Entered in PlaidCloud as
The Environment URL, https://<name>.operations.dynamics.com Environment URL
The Directory (tenant) ID Directory (tenant) ID
The Application (client) ID Application (client) ID
The Fabric Link SQL endpoint, database and login A separate SQL connection in PlaidCloud, chosen in the fabric_connection_id system setting
The main account categories of your cost of goods sold accounts (PlaidCloud assumes COGS) The cogs_categories system setting
The main account categories of the accounts that are not operating: interest, income tax, foreign exchange gains and losses, other income The non_operating_categories system setting
The financial dimension that names a line’s intercompany partner (PlaidCloud assumes IntercompanyPartner) The ic_partner_dimension system setting
The legal entities PlaidCloud may read Chosen under Legal entities in PlaidCloud

The client secret and the SQL login’s password never go by email. The PlaidCloud user’s team pastes the Client secret into PlaidCloud themselves, and the SQL connection holds the SQL login. Legal entities that are consolidation entities go under the consolidation_companies system setting, so their postings aren’t counted as a company’s activity.

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

Dataset Permission it needs
Entities General ledger: View legal entities
Fiscal calendar General ledger: View fiscal calendars
Chart of accounts General ledger: View main accounts
Departments General ledger: View financial dimension values
Customers Accounts receivable: View customers
Products Product information management: View released products
Currency rates General ledger: View exchange rates
Trial balance, General ledger View the general ledger (the journal, through Fabric Link)
Sales lines, Inventory balances, Budget Optional

When a dataset is missing, the test names the permission to add. Ask the administrator to add it to the role and test again. Sales lines, Inventory balances and Budget are optional: an environment that doesn’t hold them still loads everything else.