# getpeppr > getpeppr is a developer-first Peppol API and TypeScript SDK for EU e-invoicing. Developers send JSON via the SDK, and getpeppr handles UBL XML generation, BIS 3.0 compliance, and Peppol network delivery. - Target audience: developers, CTOs, and engineering teams building invoicing into SaaS, fintech, and accounting applications - Primary market: Belgium (mandate live since January 2026). France (September 2026 reform): sandbox support available today, production reception in a private pilot — no general availability claim. Germany planned (January 2027) - Key differentiator: multi-tenant Platform API — one master API key manages multiple customer Legal Entities, with per-tenant authorisation and webhooks - SDK: `@getpeppr/sdk` on npm (TypeScript-native, full type safety) - Pricing: Free sandbox forever. Self-serve Business plans run from EUR 49 to EUR 399/month + usage. Multi-tenant Platform: one plan at EUR 99/month plus 0.25 EUR per document sent or received, 50 customer Legal Entities included, then one euro per additional registered Legal Entity each month, no per-customer minimum; production requires an Order Form + DPA - Company: Zero Loop Labs Ltd (London, UK) ## Tools - [Free Peppol Participant Lookup](https://getpeppr.dev/peppol-lookup): Free, no-account tool to check whether a company is registered on the Peppol network and which documents (invoice, credit note) it can receive — look up any participant by VAT number, company number, or GLN ## Docs - [Getting Started](https://getpeppr.dev/docs): Quick start guide — install SDK, send first invoice - [Send an Invoice](https://getpeppr.dev/docs/send-invoice): Complete guide to sending Peppol invoices via JSON - [Validation](https://getpeppr.dev/docs/validation): Pre-send validation with human-readable error messages - [Credit Notes](https://getpeppr.dev/docs/credit-notes): How to issue credit notes - [Error Handling](https://getpeppr.dev/docs/error-handling): Error codes and troubleshooting - [Sandbox](https://getpeppr.dev/docs/sandbox): Free, permanent testing environment — invoices go to the Peppol test network - [CLI](https://getpeppr.dev/docs/cli): `@getpeppr/cli` — send, validate, look up, and convert from the terminal - [France Guide](https://getpeppr.dev/docs/france): Domestic French B2B under the 2026 reform — sandbox available, production validated with pilot partners - [API Reference](https://getpeppr.dev/reference): Full OpenAPI specification ## Platform API (multi-tenant) - [Platform Overview](https://getpeppr.dev/docs/platform/): One master API key, multiple customer Legal Entities — scopes, access and go-live steps - [Legal Entities](https://getpeppr.dev/docs/platform/legal-entities): Full API reference — create, list, archive, and request customer authorisation - [Lifecycle](https://getpeppr.dev/docs/platform/lifecycle): Verification, network discovery, and the sandbox-to-production states - [Sandbox Pilot](https://getpeppr.dev/docs/platform/sandbox-pilot): Free self-service trial — onboard a test customer and send end to end, no call, no agreement - [Sending & Webhooks](https://getpeppr.dev/docs/platform/sending-and-webhooks): Send on behalf of a customer, and the lifecycle events you receive - [Onboarding](https://getpeppr.dev/docs/onboarding): Create your first Legal Entity — identifier schemes, verification, sandbox - [Identifier Verification](https://getpeppr.dev/docs/onboarding/verification): How company registry verification works — registries, evidence retention, failure handling - [Contacts](https://getpeppr.dev/docs/contacts): Buyer management with Peppol Directory search and lookup - [NL-R-003](https://getpeppr.dev/docs/error-handling/nl-r-003): The Dutch send-rule rejections — what triggers them and how to fix them - [Sender VAT missing](https://getpeppr.dev/docs/error-handling/sender-vat-missing): Why a send without a usable sender VAT identifier is refused, by sender profile - [Result Codes](https://getpeppr.dev/docs/api-results): Every API result code with its remediation guide — searchable ## Compare - [Best Peppol API for multi-tenant SaaS (source-checked 2026-08-25)](https://getpeppr.dev/best-peppol-api): Conditional comparison of getpeppr vs peppol.sh, Storecove, e-invoice.be, and Basware — tenant model, SDKs, pricing, onboarding, country boundaries, and official provider sources - [Peppol for field service / ERP platforms](https://getpeppr.dev/peppol-for-field-service-software): Accounting export is not Peppol. For field service, job management and ERP platforms whose customers each need their own Peppol identity — JSON in, one integration, Storecove access point. French CTC remains a private pilot. - [getpeppr vs peppol.sh](https://getpeppr.dev/getpeppr-vs-peppol-sh): Honest head-to-head — peppol.sh fits solo/low-volume/agent-first builders; getpeppr is built for multi-tenant SaaS platforms (published SDK + CLI, identity verification, dashboard, predictable pricing) ## Agent resources - [SKILL.md](https://getpeppr.dev/SKILL.md): Machine-readable quickstart for AI agents — auth, sandbox flow, endpoints, limits - [Agent card](https://getpeppr.dev/.well-known/agent.json): Structured agent manifest (authentication, skills, endpoints) - [OpenAPI spec](https://getpeppr.dev/openapi.yaml): Full OpenAPI 3.1 specification of the REST API ## Optional - [Authentication](https://getpeppr.dev/docs/authentication): API key management - [Webhooks](https://getpeppr.dev/docs/webhooks): Real-time delivery status events - [Types Reference](https://getpeppr.dev/docs/types): TypeScript type definitions - [Document Status](https://getpeppr.dev/docs/document-status): Invoice lifecycle and status tracking - [Listing Invoices](https://getpeppr.dev/docs/receiving): How to list and browse submitted invoices