Exact HR logoMicrosoft Dynamics 365 logo

Payroll to finance

Exact HR to Dynamics 365 integration: payroll costs from Exact Online payroll as journal lines in Business Central

With an integration between Exact HR (Exact Online payroll) and Microsoft Dynamics 365 Business Central, the payroll costs of every finalised Exact payroll run automatically arrive as lines in a Business Central journal, on GL account and with cost centre and cost unit as dimensions. Finance reviews the journal and posts it, or lets KoppelHet post it after a successful check.

What the integration does

Organisations that run payroll in Exact Online payroll and keep their books in Business Central have payroll costs in two packages from different vendors. Finance creates a manual journal from Exact reports after every run, and a difference with the payslips only shows up at year end.

  1. Payroll finalises the payroll run in Exact, as today.
  2. KoppelHet fetches the finalised pay components of that period, per Exact division.
  3. Per pay component KoppelHet looks up the Business Central account, and cost centre and cost unit become dimension values.
  4. The lines land in a fixed payroll journal with one document number per payroll run.
  5. Finance reviews and posts, or KoppelHet posts the journal if that has been agreed.
Exact HR → KoppelHet → Microsoft Dynamics 365SOURCEExact HRTARGETMicrosoft Dynamics 365KoppelHetmapping · logging · monitoringExact HR → KoppelHet → Microsoft Dynamics 365SOURCEExact HRTARGETMicrosoft Dynamics 365KoppelHetmapping · logging · monitoring
Out: Finalised pay components per period · Journal and journal lines in Business Central · GL account per pay component · Dimensions for cost centre and cost unit · Document number per payroll run

What to watch for with Exact HR and Microsoft Dynamics 365

  • Business Central can only read dimension values through the API, not create them. A cost centre that is new in Exact must therefore first be added in Business Central by finance. KoppelHet compares the codes from Exact against the existing dimension values beforehand and reports a missing code before anything is posted.
  • Exact offers no payroll journal in its API, only the pay components of the run with cost centre and cost unit. KoppelHet turns those into journal lines, and every pay component has its own Business Central account in the lookup table.
  • A journal line in Business Central has one signed amount, no separate debit and credit. Exact indicates per component whether it is an allowance or a deduction; KoppelHet uses that to set the sign, and leaves out subtotals.
  • Business Central posts a journal in one go with a separate action. KoppelHet fills the journal completely first, checks that debit and credit balance, and only then posts, so there is never half a payroll run in the ledger.
  • Exact returns lines from entered to finalised and also pro forma calculations. Only finalised lines from a real pay frequency reach the Business Central journal.
  • Every employer is its own division in Exact, and in Business Central every company has its own journal. KoppelHet records per Exact division which company and which journal the payroll costs go to.

How we build and run it

  • The integration runs on the KoppelHet platform, hosted in a data centre in the EU.
  • Every sync and every error is visible in the functional log; on an error your administrator is notified.
  • A change that cannot go through is not half-applied but queued for another attempt.
  • KoppelHet is ISO 27001 certified. Data travels encrypted and stays on the platform no longer than needed.
  • After go-live we manage the integration and adjust it when your process changes.
  • The integration fits next to your existing integration layer. Only the fields in the design are transferred; the platform keeps no register of its own.

Implementation, architecture and compliance

Implementation and price

This is not an app you switch on. We build the integration for your organisation on our platform, with building blocks we reuse on every project. So it is custom work that does not start from scratch.

A consultant prepares the intake and analyses both systems. We then record the mapping and exceptions field by field, test in the test or acceptance environment and go live at a moment you choose. Costs are a one-off amount for the setup and a monthly amount for platform, monitoring and support.

Price indication · Complex

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Does this also work with Dynamics 365 Finance?

This page assumes Business Central. For Dynamics 365 Finance the integration uses different journal entities; we agree that separately.

Does KoppelHet post the journal itself?

It can, but we start by staging. Finance posts the first payroll runs itself, and only when those are right does KoppelHet post automatically.

Does this also work with Exact Globe?

No. Exact Globe usually runs on premises and is outside this integration.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • Exact Online through the REST API with OAuth 2.0, GET only - /api/v1/beta/{division}/payroll/PayrollTransactionsByPayrollYear (filters on PayrollYear, Period, Frequency and Status; Status 6 finalised, Frequency 11-15 pro forma; fields include PayrollComponentCode, CostCenterCode, CostUnitCode, CalculatedAmount, PayrollRunCode) and /payroll/PayrollComponents (Type 1 allowance, 2 deduction, 3 subtotal).
  • Business Central through API v2.0 - journals and journalLines (accountType, accountNumber, postingDate, documentNumber, amount, description), dimensionSetLines per line (code, valueCode), dimensionValues GET only, and the bound action Microsoft.NAV.post on the journal (response 204). Access through an app registration in Microsoft Entra ID.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in Exact HRField in Microsoft Dynamics 365Notes
PayrollComponentCodeaccountNumber (accountType G/L Account)Lookup table maintained by finance
CostCenterCodedimensionSetLine KOSTENPLAATS (valueCode)Value must already exist in Business Central
CostUnitCodedimensionSetLine voor de tweede dimensie
Bedrag per componentamountOne signed amount: positive debit, negative credit
PayrollRunCode en PerioddocumentNumber en description
Division (Exact-administratie)Bedrijf (company) in Business Central

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.