A pre-submission validation layer for Dynamics 365 that catches Peppol errors inside D365, before they ever hit your submission batch.

In brief

The standard D365 Peppol flow validates too late: invoices leave the system looking clean and get bounced downstream by EN 16931 and Peppol BIS rules. Dr Dynamics built a validation layer that runs inside D365 at the point of creation, routes failures to an error workspace with plain-English fixes, and lets you correct and resubmit individual invoices in place — with the data never leaving your environment. Built on a live French rollout, it works for any Peppol market.

Struggling with Peppol errors when you send electronic invoices out of Dynamics 365?

You’re not imagining it. The standard flow generates a clean-looking XML, drops it into the submission batch, and you find out it failed somewhere downstream. At the access point, at the receiver, or on an external validator site. By then the invoice is already out the door, the batch is half-processed, and someone in finance is staring at a rule code like “BR-25” trying to work out what it means.

The standard flow validates too late. That’s the whole problem.

So we built a tool to fix exactly that.

Why the standard flow burns your finance team

Here’s how it usually goes. D365 Finance generates Peppol-format invoices through Electronic Reporting and submits them in batch. Microsoft applies validation rules when the invoice is generated which catche the obvious gaps. However, what it doesn’t reliably catch are the EN 16931 and Peppol BIS Billing rules that only bite when the receiver’s access point checks the file.

The ones I see over and over:

  1. A price written as 836.12000 when EN 16931 expects two decimals.
  2. A missing buyer reference (PEPPOL-EN16931-R003 / BT-10).
  3. A free-text invoice with no item name (BR-25 / BT-153).
  4. Empty contact elements left in the file (PEPPOL-EN16931-R008).

None of these stop the invoice leaving D365, but every one of them gets bounced later. Every one of them gets it bounced later. So your finance team lands in the worst possible loop: send, wait, get rejected, decode the error, fix the data, resend, and hope you didn’t just create a duplicate.

Multiply that across a month-end batch and you’ve lost days. Worse, you’ve put your invoice numbering integrity at risk every time someone resubmits in a panic.

What we built

The tool adds the one thing the standard flow is missing: a validation layer that runs inside D365, before the invoice reaches the submission batch.

Four ways it helps

✅ Proactive validation. Instead of pushing invoices into the batch and finding out later, the tool checks each one against the Peppol and EN 16931 ruleset at the point of creation. Missing VAT number, empty tag, wrong decimal format, all caught immediately rather than three steps downstream.

✅ A dedicated error workspace. Invoices that fail are routed to their own workspace with plain-English instructions on exactly what to fix. Not a raw rule code from the platform provider, but instead guidance straight to the point, like “this invoice is missing a buyer reference, add it here.”

✅ Correction and resubmission in place. Fix the data, revalidate, resubmit the individual invoice straight from the workspace. No re-running the whole batch. No risk of firing off duplicates.

✅ Your data stays in-house. Validation happens inside your own environment, not on an external validator website. Your invoice data never leaves the building. And because it isn’t round-tripping to a third-party site, we’ve clocked it at roughly 10x faster than the external-validator workflow most teams fall back on.

The shift that actually matters

Most teams treat Peppol validation as something that happens after the invoice is sent. High performers move it before. Validate first, submit second. That single change is the difference between a clean invoice run and a finance team chasing rejections all week.

It’s a small tool. The payoff is not small. Every rejected invoice you stop at source is half a day your AP team gets back, and one less awkward conversation with a customer about an invoice that never arrived.

Built on a live rollout, ready for any Peppol market

We’re running this on a live France e-invoicing rollout right now, where the September 2026 mandate makes a clean Peppol output non-negotiable. The same engine works for any Peppol market. Belgium, the Nordics, Singapore’s InvoiceNow, the broader EU Peppol profile. If your invoices travel over the Peppol network, the validation gap is the same, and so is the fix.

Your ERP is only as good as the data behind it. Peppol just makes that true in public, on every invoice you send.

Register your interest

We’re opening this up to a small group of D365 customers first, because we want to see where the demand is before we roll it wider.

If sending Peppol invoices out of Dynamics 365 is causing you grief, register your interest. Email kim@drdynamics.co.uk, and we’ll send you the demo and add you to the early-access list.

Make your invoicing cleaner, faster, and more reliable. Let’s take the headache out of Peppol compliance.

Get your fastest-path plan

Bring your country footprint, your Dynamics version and whichever mandate date is closest. We'll come back with a one-page fastest-path plan within 48 hours.

The D365 compliance newsletter

Every two weeks: mandates, config fixes, no fluff. Join 750+ finance & ERP leaders.