Belgium
Structured invoices via Peppol BIS for Belgian VAT-taxable B2B.
One TypeScript SDK and one master API key to send invoices for every customer you onboard. getpeppr handles legal-entity verification, UBL/BIS 3.0, Peppol delivery, and status webhooks.
$ npx @getpeppr/cli validate invoice.json $ npm install @getpeppr/sdk
Try with npx first — no signup, no
API key. Install the SDK when you're ready to send.
SDK v1.5.2 · CLI v0.4.5 · latest on npm
import { Peppol } from "@getpeppr/sdk";
const peppol = new Peppol({ apiKey: "sk_sandbox_master_..." });
const invoice = await peppol.invoices.send({
sender: { externalSubTenantId: "customer_8412" },
number: "INV-2026-001",
to: {
name: "Riverside Clinic",
peppolId: "0208:0685660237",
country: "BE",
},
lines: [
{ description: "Consultation", quantity: 1,
unitPrice: 90, vatRate: 21 },
],
});
console.log(invoice.status); // "submitted"One SDK · EU mandates and coverage
Structured invoices via Peppol BIS for Belgian VAT-taxable B2B.
Issuing transition runs through 2027 and 2028.
All receive; large and mid-sized businesses issue first, SMEs follow in 2027.
Useful for UK-headquartered SaaS platforms serving Peppol customers.
Keep country-specific rollout copy conservative until provider docs are re-checked.
Peppol coverage is broad; per-country KYB verification remains the honest caveat.
Digital VAT reporting for intra-EU B2B trade.
Each new mandate should be a configuration change, not a rewrite of your billing pipeline. Country-specific verification and access-point details stay behind the API.
Built for platforms
Your customers each keep their own Peppol identity. Your team keeps one integration. getpeppr models that directly: provision a customer, capture authorisation, send on their behalf, and listen for lifecycle webhooks.
No XML in your product, no access-point operations in your backlog, and no per-customer onboarding loop rebuilt from scratch.
Read the platform integration guideYour SaaS platform
One master API key
Customer A
Own Peppol identity
Customer B
Own authorisation
Customer C
Own lifecycle status
getpeppr
Verification, UBL/BIS 3.0, Peppol delivery, webhooks
Try before you buy
Validate, scaffold, and convert UBL invoices from your terminal. Sign up only when you're ready to send through the Peppol network.
npx @getpeppr/cli validate invoice.json validate · BIS 3.0 offline init · scaffold a starter convert · JSON → UBL XML The typical Peppol integration takes 3-5 weeks of reading documentation. Ours takes 5 minutes.
Read 47-page "quick start" guide
Understand UBL 2.1 XML schema (150+ elements)
Learn AS4 protocol for message delivery
Handle BIS 3.0 validation rules that contradict each other
Build 150+ lines of XML by hand per invoice
Contact sales for sandbox access
3-5 weeks before first invoice
npm install @getpeppr/sdk
Write JSON — we generate compliant UBL XML
Full TypeScript types with autocomplete
Actionable validation errors with fix suggestions
Instant self-service sandbox with API keys
Done. Ship it.
5 minutes to first invoice
Every operation is a single, intuitive method call. Full TypeScript autocomplete. No XML, no SOAP, no pain.
import { Peppol } from "@getpeppr/sdk";
const peppol = new Peppol({ apiKey: "sk_sandbox_..." });
const result = await peppol.invoices.send({
number: "INV-2026-042",
to: {
name: "ACMEDIA",
peppolId: "0208:0685660237",
street: "Rue de la Loi 200",
city: "Brussels",
postalCode: "1000",
country: "BE",
},
lines: [
{ description: "Consulting Q1", quantity: 40, unitPrice: 125, vatRate: 21 },
{ description: "Travel expenses", quantity: 1, unitPrice: 350, vatRate: 21 },
],
paymentTerms: "Net 30 days",
paymentIban: "BE68539007547034",
});
console.log(`Sent! ID: ${result.id}`);Built by developers who spent weeks reading Peppol docs so you don't have to.
Belgium live today. France, Germany, Netherlands next. One API, automatic country-specific compliance routing.
Pre-send validation catches errors before they hit the network. Human-readable messages with fix suggestions, not cryptic Peppol rule IDs.
Full type safety from invoice creation to webhook handling. Autocomplete every field. Catch errors at compile time, not runtime.
Full Peppol BIS 3.0 compliance out of the box. Invoices, credit notes, allowances, attachments, delivery — all handled.
Get notified instantly when invoices are delivered, accepted, or rejected. No polling. Event-driven architecture like Stripe.
Send JSON, we generate compliant UBL XML. Your developers will never see an angle bracket. That's a promise.
We analyzed the leading Peppol providers. getpeppr offers the best combination of developer experience, multi-country roadmap, and self-service onboarding.
| Provider | SDKs | Pricing | Countries | Self-Service | First Invoice |
|---|---|---|---|---|---|
| getpeppr You are here | TypeScript (more coming) | From EUR 49/mo | Belgium (expanding) | Yes | 5 minutes |
| e-invoice.be | 6 languages | EUR 0.25/invoice | Belgium only | Yes | < 1 hour |
| Recommand | Open source | Free tier + EUR 0.10-0.30 | Belgium (Peppol global) | Yes | Minutes |
| BudgetInvoice | REST API only | EUR 0.12–0.35/invoice | Belgium + NL | Yes | Hours |
| Qvalia | None | EUR 39/mo+ | 15+ | Yes | Minutes-hours |
Mandate-ready by design
getpeppr is built on Storecove, a certified Peppol Access Point across the EU. We absorb spec changes, country quirks, and new mandates so you never ship a migration to stay compliant.
Storecove is a certified Peppol Access Point connected to the EU Peppol network. BIS 3.0 updates, format revisions, and new country onboardings flow through that integration before reaching your code.
When a new EU mandate lands, getpeppr ships the country-specific layer — identifier schemes, validation rules, CIUS extensions. Your JSON contract stays exactly the same. Your code doesn't change.
BIS 3.0 today. Country CIUS as mandates land. ViDA Digital Reporting Requirements for cross-border B2B by 1 July 2030 — same SDK, same contract, same JSON.
Start free. Send your first invoice in 5 minutes. Scale without surprises.
Business plans run from a free sandbox to EUR 399/month. Platform plans support SaaS products sending on behalf of customer Legal Entities.
For companies sending their own Peppol invoices.
Test everything. No credit card required.
No credit card. No time limit.
For developers and early-stage SaaS.
For growing businesses.
For high-volume senders.
For SaaS products sending on behalf of customer Legal Entities.
A Legal Entity is one customer company you activate for production sending.
For early SaaS platforms validating production Peppol with first customers.
Contract-gated. No public checkout.
For young SaaS platforms and design partners.
Contact details below.
For growing SaaS platforms with real customer volume.
Contact details below.
Tell us about your platform volume and target countries.
Email hello@getpeppr.dev and we will reply with the platform agreement + DPA path.
Chat uses the Crisp widget when it is available.
All prices in EUR. Business plans have no setup fees. Platform production access is contract-gated.
Belgium is live today on the Peppol production network. France (September 2026) and Germany (2027) are next on the roadmap. The API is designed for multi-country support from day one. Sign up at console.getpeppr.dev to get sandbox API keys instantly and start sending.
Yes. Free forever, unlimited test invoices, no credit card required. When you're ready to go live, plans start at EUR 49/month.
No. Send JSON, we handle the UBL XML generation, BIS 3.0 compliance, and Peppol network delivery. Zero XML knowledge required.
Yes. The Belgium Peppol integration is live and validated against Storecove's production network. Our SDK has 1,888 passing tests and full BIS 3.0 compliance.
They are for SaaS products that need to send Peppol invoices on behalf of many customer companies. Each customer company you activate for production sending counts as one Legal Entity. Early-stage platforms can start with the 6-month Platform Pilot before converting to Starter or Growth.
Sandbox access is self-serve, but production platform access is contract-gated. We enable production after a signed platform agreement and DPA, so responsibilities, Legal Entity limits, and data processing terms are clear before live customer sending.
Platform plans combine a fixed monthly fee with per-document usage. Platform Pilot uses a higher per-document rate during the 6-month bridge, Platform Starter publishes a EUR 50 auto-charge threshold for accrued usage, and Platform Growth uses volume-adjusted automatic billing so larger platforms do not get noisy micro-charges.
A typical Peppol integration takes 3–5 weeks: reading UBL 2.1 specs, implementing XML generation, handling AS4 protocol, and managing BIS 3.0 validation rules. With getpeppr, you send JSON and we handle everything. Most developers send their first test invoice in under 5 minutes.
TypeScript SDK, webhooks, CLI (send + validate + scaffold + lookup), sandbox + production Belgium
France support, CSV export, Python SDK
Germany support, multi-country routing
Send your first invoice in 5 minutes. Free sandbox, no credit card, full SDK access.
$ npm install @getpeppr/sdk Free sandbox forever. No credit card required. Ship invoices in minutes.