Integration · Accounting
Dynamics 365 integration: invoices and the ledger
Invoices and carrier bills post from Roadmark to Dynamics 365 Business Central once approved, by company for a multi-company environment.
The short answer
Dynamics 365 and Roadmark, in short.
What syncs
| What | Direction | When |
|---|---|---|
| Invoices | →Roadmark to Dynamics 365 | Once you approve one, as a sales invoice |
| Carrier bills | →Roadmark to Dynamics 365 | Once matched and approved, as a purchase invoice |
| Journal entries | →Roadmark to Dynamics 365 | Adjustments only |
Setting up Dynamics 365
1Register Roadmark in Microsoft Entra ID
An admin registers Roadmark as an app in Microsoft Entra ID with the Dynamics 365 Business Central API.ReadWrite.All permission and grants admin consent. In Business Central, an admin then adds it on the Microsoft Entra Applications page, sets it to Enabled and assigns the permission sets it needs.
2Choose the company
A Business Central environment can hold more than one company; pick which company, or companies for a group, Roadmark connects to.
3Choose what syncs
Turn on invoices, carrier bills and journal entries for adjustments, or leave any of them off.
4Test with a real load
Approve one invoice and one carrier bill, and check the sales invoice, purchase invoice and any journal entry in Business Central before you turn it on for everything.
Before you start
- Dynamics 365 Business Central online, or on-premises set up for Microsoft Entra authentication.
- An admin who can register an app in Microsoft Entra ID and grant admin consent, and a Business Central admin who can add it on the Microsoft Entra Applications page.
- For an environment with more than one company: which company each Roadmark company should post to.
What posts to Dynamics 365, and when
Invoices and carrier bills post to Dynamics 365 Business Central once a person approves them, and journal entries post for adjustments only, so the ledger reflects an approved number rather than a spreadsheet reconciled on Fridays. Roadmark reaches Business Central through its OAuth 2.0-secured API, the same connection method Microsoft documents for any app that reads or writes Business Central data.
Here's one invoice, from the example load used across this site. All amounts on this page are in US dollars. Load 48213, Mississauga ON to Joliet IL for Prairie Foods, delivered with the POD signed at 18:00 CT. The Billing agent drafted invoice INV-10442 at 18:15: the $4,215.00 on the rate con ($3,655.00 linehaul plus $560.00 fuel) and $100.00 of detention from the ELD, for $4,315.00. J. Park approved it, and it posted to Business Central as a sales invoice at 18:21. Payments against it are recorded and reconciled in Business Central itself, the way they are today.
Carrier bills post as purchase invoices
A carrier's bill is checked against the rate con it was tendered at and the POD before it's approved. On load 48254, Pinecrest Carriers billed $1,940.00 against a $1,780.00 rate con: two hours of detention where the POD shows one billable hour. Roadmark drafted a payment of $1,860.00 and a dispute of $80.00, with the POD attached, for a person to approve. Once approved, it posts to Business Central as a purchase invoice for $1,860.00, so what Business Central shows as owed to Pinecrest matches what was actually approved, not what was billed.
One company per business
A Business Central environment can hold more than one company, each with its own chart of accounts and ledger, reached through its own companyId in the API. In a group of several businesses, Groups explains that each keeps its own customers, carriers and books, and a load hauled by one company for another posts as an internal invoice, a payable at one company and a receivable at the other, matched automatically. If a company in the group runs its books on Business Central, its share of that internal invoice posts to its own company record, so the group's structure in Roadmark lines up with the company structure in Business Central rather than one shared ledger.
Connecting Dynamics 365
To connect, an admin registers Roadmark as an application in Microsoft Entra ID, grants it the Business Central API.ReadWrite.All application permission, and gives admin consent so it can authenticate without a person signing in each time. Microsoft's setup has a second half inside Business Central: an admin opens the Microsoft Entra Applications page, adds Roadmark by its client ID, sets its state to Enabled and assigns permission sets, which can't include SUPER. Those permission sets decide what Roadmark can reach in each company, and you choose in Roadmark which company, or companies for a group, it posts to.
Moving billing to Roadmark doesn't mean moving your ledger. Your books stay in Business Central, whether or not you move invoicing and carrier bills to Roadmark. See Billing for invoices on POD, the three-way match on carrier bills, settlement statements and collections, and Brokers for how a brokerage's own books stay separate from a carrier's in the same group.
Driver and owner-operator settlements
A load also produces a third line of paperwork: the driver or owner-operator's pay. Roadmark drafts that settlement from the same load as the invoice, with a statement showing every load, its share of revenue, the fuel surcharge, each deduction and the escrow balance, so the driver can check it before a person approves it. That settlement doesn't post to Business Central as an invoice; it's paid the way settlements are today, while the customer invoice and the carrier's purchase invoice keep posting to Business Central as described above.
Before you start
Connecting Dynamics 365 doesn't change how a load is quoted, dispatched or tracked; it only changes where the resulting sales invoice and purchase invoice land. Turn on invoices, carrier bills and adjustment journal entries together, or one at a time, and run a real load through it first. Approving one invoice and one carrier bill, then checking both records in Business Central, is a better test than trusting the connection with a week of billing straight away, and it's a natural place to confirm each company posted to the company you expected.
Questions about Dynamics 365 and Roadmark
What syncs between Roadmark and Dynamics 365?
Invoices and carrier bills, posted to Dynamics 365 Business Central once a person approves them, and journal entries for adjustments. Business Central stays the system of record for payments and financial reporting.
Does it sync both ways?
Roadmark posts approved invoices, carrier bills and adjustment journal entries into Business Central; it doesn't read payments or ledger balances back out. Your books stay in Business Central either way.
Does it work with more than one company?
Yes. A Business Central environment can hold more than one company, each with its own chart of accounts. Each Roadmark company connects to its own Business Central company, so a group doesn't share one set of books.
Are carrier bills checked before they post to Dynamics 365?
Yes. Each carrier bill is checked against the rate con it was tendered at and the POD before it's approved. A bill over the rate con waits with a drafted payment and dispute instead of posting in full.
When does an invoice post to Dynamics 365?
When a person approves it. Roadmark drafts the invoice when the POD arrives, and a person approves the numbers instead of typing them. On the example load 48213, INV-10442 was drafted at 18:15 and posted at 18:21.

See it with the systems you run.
Tell us what you run today. In the call, we show you what connects to Roadmark and how, on your own lanes and customers.
- Your lanes, customers and carriers, not a canned demo
- Beside the TMS you run today
- No commitment to switch anything