What is Peppol?
Peppol (Pan-European Public Procurement OnLine) is an EU-wide network and standard for exchanging electronic business documents — primarily invoices, but also purchase orders and credit notes. It was originally built for government procurement and is now the default e-invoicing format for B2B transactions across most of Europe.
When a buyer says they want a "Peppol invoice", they mean a structured XML document delivered over the Peppol network — not a PDF emailed to an inbox. The invoice travels from your access point to the buyer's access point in a machine-readable format that their finance system can import automatically, without anyone typing anything.
The format used across most of Europe is UBL 2.1 (Universal Business Language), wrapped in the EN 16931 European Invoice Standard. In the Netherlands it's called Peppol BIS Billing 3.0. The name changes by country; the underlying standard is the same.
Why EU B2B buyers are asking for Peppol invoices
EU member states are progressively mandating e-invoicing for B2B transactions, starting with public-sector buyers. In the Netherlands, all invoices to government bodies have been required in Peppol format since 2019. Similar mandates are in force or being phased in across Belgium, Germany, France, Italy, and Spain.
Private-sector adoption is accelerating as a direct result. Large buyers — retail chains, manufacturing groups, logistics companies — have standardised on Peppol internally and simply won't accept PDF invoices from suppliers anymore. If you sell B2B to Dutch or German businesses of any meaningful size, there is a good chance you will be asked for a Peppol invoice within the next 12 months if you haven't been already.
For WooCommerce store owners this creates a gap. WooCommerce generates PDF invoices via plugins like WooCommerce PDF Invoices & Packing Slips, but those are designed for B2C shipping paperwork — not structured B2B e-invoices delivered over a network. There is no Peppol plugin in the WooCommerce ecosystem that handles the full flow end-to-end.
What a compliant Peppol invoice for WooCommerce actually needs
A legally compliant Peppol invoice isn't just a well-formatted XML file. Several fields are mandatory under EN 16931 and their values must be validated against authoritative sources:
- Seller and buyer legal name and address — must match official registration records.
- VAT number (BTW-nummer) — validated against the EU VIES database in real time. An invoice with an invalid or inactive VAT number is non-compliant.
- KvK number (Dutch Chamber of Commerce) — for Dutch businesses, the KvK number must be present and checked against the Handelsregister.
- Correct VAT rate per line item — standard (21%), reduced (9%), or zero-rated. WooCommerce tax settings must map correctly to Peppol VAT category codes.
- Peppol endpoint ID — the buyer's address on the Peppol network, typically their VAT or KvK number prefixed with a scheme code (e.g.
0088:for GLN,9944:for Dutch KvK). - Unique invoice number — sequential, non-repeating, and consistent with your VAT return.
Most PDF invoice plugins for WooCommerce skip the validation steps entirely. They format a document and call it an invoice — but they don't check the buyer's VAT number against VIES, they don't look up KvK data, and they can't deliver the document over the Peppol network.
How to add Peppol e-invoicing to your WooCommerce workflow
There are two practical approaches for WooCommerce store owners who need to send Peppol invoices.
Option 1: A separate e-invoicing platform
Platforms like Storecove, Visma eAccess, and Exact Online connect to the Peppol network as access points and can receive invoice data via API. You can build or buy an integration that pushes WooCommerce order data into one of these platforms and triggers a Peppol delivery.
The downside is friction. You're managing a separate account, a separate interface, and a separate set of credentials — in addition to your WooCommerce admin. Every invoice requires switching tools. For teams handling more than a handful of B2B orders per day, this becomes a real operational cost.
Option 2: Peppol invoicing built into your WooCommerce operations workspace
The cleaner approach is to have Peppol invoicing available directly inside the same workspace where your team handles orders, customers, and support tickets. An agent opens an order, reviews the B2B buyer details, and sends a compliant Peppol invoice in two clicks — without leaving the order view.
This is how Teamdock handles it. Every workspace includes Invoice Ninja, connected to the Peppol network, with KvK Handelsregister lookup and VIES VAT validation built in. When a B2B order comes in, you pull the buyer's KvK number, the platform verifies their registration and VAT status, populates the invoice fields automatically, and delivers the Peppol document to the buyer's access point. The WooCommerce order and the invoice are linked in the same record.
Peppol e-invoicing and Dutch VAT: what WooCommerce gets wrong by default
WooCommerce's tax system is flexible, but it's designed for B2C checkout — not B2B invoicing. Several things can go wrong when you try to use it for Peppol invoices without adjustment.
VAT rate mapping. WooCommerce uses tax class names ("Standard", "Reduced Rate") which have no direct equivalent in the Peppol VAT category code system (S, AA, Z, E, O). A compliant Peppol invoice requires the correct category code per line item, not just a percentage. If your integration doesn't map these explicitly, you'll generate invoices that fail validation at the buyer's access point.
Reverse charge for EU cross-border. When selling to a VAT-registered business in another EU member state, the invoice should show 0% VAT with a "reverse charge" note and the buyer's validated VAT number. WooCommerce doesn't handle this automatically — you need to configure tax exemptions per shipping zone and ensure your invoice generator applies the correct Peppol VAT category code (AE).
B2B vs B2C detection. WooCommerce has no native concept of a B2B order. Without a dedicated field for the buyer's VAT number at checkout — and validation against VIES before the order is placed — you can't reliably distinguish which orders require a Peppol invoice and which are standard B2C sales.
What to look for when choosing a Peppol solution for WooCommerce
If you're evaluating options, these are the capabilities that separate a production-ready Peppol solution from a proof-of-concept:
- Real-time VIES validation — the buyer's VAT number must be checked against the live EU database before the invoice is generated, not after.
- KvK Handelsregister lookup — for Dutch buyers, company name and address should auto-populate from the official register to avoid manual errors.
- Correct EN 16931 XML output — the generated document must pass the official Schematron validation rules. Ask vendors for a sample and run it through the EU's PEPPOL validator.
- Certified Peppol access point — the platform needs to be a registered Peppol Service Provider, not just a document formatter. Verify their registration in the Peppol directory.
- Audit trail — every sent invoice should be logged with delivery confirmation, timestamp, and the invoice XML stored for the minimum legal retention period (7 years in the Netherlands).
- WooCommerce order linkage — invoices should reference WooCommerce order IDs and be accessible from the order view, not just from a separate invoice list.
Getting started with Peppol invoicing for your WooCommerce store
If you're a Dutch or European WooCommerce store with B2B customers, the safest time to set up Peppol invoicing is before your first enterprise buyer asks for it — not after you've already missed a payment cycle because the invoice format was wrong.
The practical steps are: register with a certified Peppol access point, configure your VAT rate mappings, collect buyer VAT numbers at checkout, and connect your order flow to your invoicing tool. If all of that is built into your operations workspace rather than split across four separate systems, the day-to-day work for your team is a handful of clicks per B2B order.
Teamdock includes Peppol e-invoicing on every plan — no separate subscription, no separate login. Your team can send a compliant invoice directly from any WooCommerce order in under a minute.