WooCommerce e-invoicing in the Netherlands, without changing your store
The Netherlands has no domestic B2B mandate yet, but the public sector has received Peppol e-invoices since 2017 and a growing share of Dutch businesses ask their suppliers for them. The GoRoute plugin sends a Peppol e-invoice for every paid business order — your theme, checkout and payment gateway stay exactly as they are.
Install from the WordPress plugin directory, choose the Netherlands in the set-up, connect once, and business orders issue and deliver themselves.
- 10 min
- one-time set-up
- 0
- changes to your theme
- 2030
- EU cross-border digital reporting (ViDA)
Order #10432 · paid
Business customer · VAT number (btw-id) NL123456789B01
Invoice INV-2026-10432 · Peppol BIS Billing 3.0
✓ Delivered to the buyer over Peppol at 14:02 · PDF attached to the order email
Behind this order, in the seconds after payment
What changes in your store
Almost nothing — which is the point. The plugin listens to the order events WooCommerce already fires and adds the e-invoicing layer behind them.
One optional field at checkout
A business customer types their VAT number (btw-id); the plugin checks it on the Peppol network as they type and says whether an e-invoice can reach them. Consumers see nothing new, and compliance never blocks a sale.
An invoice that reaches the buyer
A paid business order becomes a Peppol BIS Billing 3.0 e-invoice, delivered by GoRoute’s certified access point to the buyer’s own accounting software, with the PDF on the order email.
Visibility in your admin
Every order shows its invoice number, the delivery state as the buyer’s system acknowledges it, and a retry for anything that needs one. A card on the WordPress dashboard sums up the month.
How an order becomes a Peppol e-invoice
One completed order, four steps, no one at the keyboard.
Order paid
WooCommerce completes payment exactly as today.
GoRoute validates
Turned into Peppol BIS Billing 3.0 and checked against the Dutch rules before anything leaves.
Sent over Peppol
GoRoute’s access point looks the buyer up on the network and delivers to their provider.
Buyer acknowledged
The delivery answer comes back to the order, and the merchant sees Delivered.
The buyer is checked first
Before an invoice leaves, the buyer’s identifier is looked up on the network. A buyer who is not there is told in words on the order, never a silent failure.
Your own identifier is registered for you
Step 3 of the set-up registers the store’s VAT number (btw-id) on GoRoute’s SMP and the Peppol directory, scheme 9944 (btw-id), so responses and incoming documents can find you.
The access point is GoRoute itself
The plugin is not an invoice generator bolted onto someone else’s network. GoRoute is the certified access point, so the invoice, its delivery and its status are one service.
Who this is for
The same network lands on very different desks.
Store owners
You sell; the plugin invoices. Ten minutes of set-up, then it runs itself — refunds, retries and delivery status included.
WooCommerce agencies
One plugin you can install for every Dutch client, with nothing bespoke to maintain. The rules live on GoRoute’s servers, so your builds never go stale.
Accounting firms
Offer it to clients under your own brand through the partner programme — you advise, the platform delivers.
Custom-built stores
No plugin needed: the same issuing engine is one REST call at checkout, with the same delivery status back.
Supported setups
Built for the WooCommerce that exists, not the one in the documentation.
WordPress 6.0+ · WooCommerce 8.0+
Including High-Performance Order Storage (HPOS) and the block checkout. The plugin uses the supported order APIs, not direct table access, so core updates do not break it.
Any payment gateway
Issuing hooks the payment-complete event, so Mollie, Stripe, PayPal, bank transfer and cash on delivery all behave the same: paid order in, e-invoice out.
Consumer and business orders in one store
A consumer order issues nothing and says so; a business order with an identifier issues and delivers. Add the identifier later and the invoice follows.
Groups with several entities
One store, one VAT number (btw-id). A group with several legal entities sets each store up with its own, and an agency plan shares one allowance across many stores.
What an e-commerce invoice flow must handle
Online retail has habits — refunds, retries, double clicks. Each one has a correct answer, and each is automatic.
Issue
A Peppol BIS Billing 3.0 invoice for every paid business order, validated before it exists.
Refund
A refund raises a credit note referencing the original invoice and delivers it the same way. Refund in WooCommerce as normal; the document follows.
Deduplicate
A double-clicked checkout or gateway retry returns the same invoice rather than minting a second one — one sale, one document, ever.
Deliver and prove it
The buyer’s acknowledgement lands on the order. Undelivered documents are retried by themselves after a registry hiccup at the buyer’s end.
Fail loudly
A refused document is explained on the order in words, retried where retrying helps, and surfaced in a daily digest — never silently dropped, never allowed to block the checkout.
Stay current
Validation and rendering happen on GoRoute’s servers. When the Dutch rules change, every store is current the same day, with no plugin update.
Connecting your store, step by step
About ten minutes, once. No developer, no theme changes, no key to copy.
Install and choose the Netherlands
Install from the WordPress plugin directory. The set-up opens and asks where your business is registered.
Connect once
One button: sign in or create your GoRoute account, approve the store, and you are back with the store connected. No API key to paste.
Confirm your business
Legal name, VAT number (btw-id) and logo. The identifier is registered on the network for you as you save.
Readiness, then a test order
Six readiness rows, each with its fix beside it. Place a business order and watch Delivered appear.
Ready before your customers ask
GoRoute is a certified Peppol Access Point. The plugin is in the WordPress directory today, free, with a Free plan that includes 50 invoices a month.
What applies to an online store in the Netherlands
The rule, the date, and what the plugin does about it.
Today
No obligation for domestic B2B sales. Government bodies receive e-invoices over Peppol, and many businesses prefer them because they land straight in accounting software.
1 July 2030
Under the EU’s VAT in the Digital Age package, cross-border B2B invoices inside the EU must be structured e-invoices with digital reporting.
Included in this flow
A business customer who gives a Dutch VAT number at checkout receives a Peppol BIS Billing 3.0 invoice, delivered to their software through the network, with a credit note on refund. The Dutch Peppol Authority (under Logius) governs the network here; GoRoute is a certified access point on it.
Plans
A new account starts on Free: 50 invoices a month with every feature. Starter, Growth, Business and Agency plans are bought and changed from inside WordPress; a paid plan is never stopped at its allowance. Registration of your own identifier on the network is included with every plan.
Sources: Logius: Peppol in the Netherlands · Dutch Peppol Authority: specifications · Peppol.
Further reading
The country page goes deeper than a product page can, and the plugin does the same job in the other countries GoRoute serves.
Belgium e-invoicing, in full
Mandate, network and readiness for the Netherlands.
WooCommerce e-invoicing in Belgium
Mandatory B2B since January 2026, over Peppol.
WooCommerce e-invoicing in Germany
Receive since 2025; issue from 2027 and 2028.
WooCommerce e-invoicing in Oman
Where consumer receipts carry a QR code and the Tax Authority is reported to.
The Dutch guide for developers
Identifiers, document types and test participants, in the documentation.
The API behind the plugin
For custom-built stores and anything that is not WooCommerce.
WooCommerce e-invoicing in the Netherlands: frequently asked questions
The questions Dutch store owners ask first.
Does my WooCommerce store need e-invoicing in the Netherlands?+
What does a business customer receive?+
What happens on a consumer order?+
What identifier does the plugin register for me?+
Do I have to change my store or my theme?+
What happens when a customer gets a refund?+
What if the buyer is not on the Peppol network?+
Is the plugin free?+
See it on a real store
Twenty minutes, your questions, a live business order with a real delivery at the end of it.
Book a walkthrough