Connect Dynamics 365 Business Central
XCubes reads a Business Central online company through Microsoft's finance reporting API. You sign in with your own Microsoft account; XCubes then reads the data your BC permissions allow.
The integration is in preview: its tile under Add integration carries a Sandbox badge while it is being tested against Business Central sandbox environments, and is only offered to accounts enabled for the preview. Connect a sandbox or test company until the badge is gone; ask XCubes support to be added to the preview.
What it reads
- General ledger entries — every posted line, with one
dim:column per dimension (for exampledim:DEPARTMENT,dim:PROJECT) holding the value code. Map these straight onto cube dimensions. - G/L budget entries — the same shape, for budget vs actual.
- Chart of accounts — with category, type and parent account.
- Dimension values and accounting periods.
Customer and vendor ledgers, and on-premises Business Central, are not supported.
Connecting
- In the project's Integrations area choose Add integration → Business Central and click Connect with Microsoft.
- Sign in with the Microsoft account you use for Business Central.
- Back in XCubes, pick the Environment and the Company, then the data to import, and map the columns.
"Needs admin approval"
Many organisations do not let users approve new applications themselves. If
Microsoft shows that message, XCubes displays a link to send to your
Microsoft administrator. They open it, sign in, and approve XCubes once for
the whole organisation; you then click Connect with Microsoft again.
Administrators can also approve in advance by opening
https://login.microsoftonline.com/organizations/adminconsent?client_id=<XCubes client id>
— ask support for the id.
The Microsoft consent screen currently shows XCubes as an unverified
publisher: Microsoft's publisher verification needs a registered legal
entity, which XCubes does not yet have. The request is still the same
read-only use of your Business Central data, and the permission shown
(Financials.ReadWrite.All) is the only one Microsoft offers for it; XCubes
never writes to Business Central.
Dimension items and their names
The dim: columns hold value codes only. To create the items with their
Business Central names, open the integration's Dimension Items section
(it appears once an environment and company are chosen). Each Business
Central dimension is listed; pick the XCubes dimension it feeds and click
Load items. The dimension its dim: column is mapped to is preselected,
or else one with the same name.
If there is no such dimension yet, keep + New dimension…: the name is proposed from Business Central (with " (BC)" added if the project already has a dimension by that name), and you choose Flat or Hierarchy. Create & load creates the dimension and loads its items in one step.
When the integration has a target cube, Add to cube … and map dim:… is
ticked by default. The new dimension is then also added to that cube as a page
dimension, the integration's dim: column is mapped to it, and the cube is
rebuilt from the rows already imported, so existing entries land on their own
dimension values straight away rather than at the next refresh. Untick it to
only create and fill the dimension.
- New values are added as items named after Business Central.
- Existing items stay where they are. An item still without a real name (for example one created by Auto-create) gets its Business Central name; a name you typed yourself is kept.
- In a hierarchical dimension, Business Central's Heading and
Begin-Total values become parent items, and the values indented under them
become their children, so totals roll up as in Business Central. Top-level
values go under the dimension's root, or under a new
TOTALitem. - In a freeform dimension only the posting (Standard) values are loaded.
- Total and End-Total values are always skipped: Business Central does not expose which values a Total adds up.
- Nothing is ever deleted. Load again whenever new values have been created in Business Central; Auto-create on the mapping still covers new codes between loads, without names.
Build a P&L and Balance Sheet
Once the integration has an environment and a company, open the P&L and Balance Sheet section on the integration. Check the model name and the years, tick any Business Central dimensions you want as page dimensions, and click Build P&L and Balance Sheet. XCubes creates, from your chart of accounts:
- a P&L cube with your income-statement accounts, grouped as in Business
Central. Amounts are shown with revenue positive and costs negative, so every
total reads as profit. Year-end closing entries (source code
CLSINCOME) are left out, so a closed year still shows its result; a company that renamed that source code will see closed years net to zero; - a Balance Sheet cube with your balance-sheet accounts, in Business Central's signs (assets positive, liabilities and equity negative). Its Measure dimension has Movement (each period's change) and Balance (the running total; quarters and years show the period-end balance). The Unclosed result group holds the income-statement accounts until Business Central's year-end close moves the result to equity, so the balance sheet totals 0 whenever every account and period is loaded.
Both cubes reload after every sync. Start the years at or before the first posting; balances need the whole history. Total and End-Total accounts are not created: their amounts are the totals of the accounts they group.
After the build the section shows Open P&L and Open Balance Sheet links. If accounts are added in Business Central later, the section lists them; they are not loaded until you add them to the account dimensions. New values of the Business Central dimensions in the model are listed the same way; load them with Dimension Items. Entries dated after the Time dimension's last year are not loaded either: extend Time in the dimension editor before that year ends (the section warns once it has begun).
Refresh behaviour
Refreshes are incremental: only entries modified since the last run are read, and each entry is matched by its id, so a dimension corrected on a posted entry updates the cube. Business Central never deletes posted entries. Budget lines deleted in BC are not removed from the cube: to drop them, delete the integration and connect it again. Changing the environment, company or data to import on an integration starts it over from a full read.
Licensing and access
Your own Business Central licence covers the refresh. XCubes reads with your permissions; it never writes to Business Central. If your password changes or the approval is revoked, the next refresh fails with a "reconnect" message; delete the integration and connect it again (its mapping has to be set up afresh).