Does Stripe support e-invoicing?
By evoicely · Last checked 19 October 2026
Not on its own. According to Stripe's documentation, Stripe Invoicing creates invoice records and exposes their data through the API and webhooks, but it does not generate or transmit legally compliant e-invoice files itself. To meet an e-invoicing mandate, you either install an e-invoicing app from the Stripe App Marketplace or build a webhook integration with an e-invoicing provider. (Stripe docs: E-invoicing)
Why a Stripe PDF isn't an e-invoice
An e-invoice is a structured, machine-readable file, usually XML in one of two syntaxes, UBL or CII, that follows the European standard EN 16931 and a national or network rule set. The buyer's software processes it automatically. A PDF, even one generated by Stripe and emailed automatically, is an image of an invoice, not structured data.
The main formats Stripe users run into:
- Germany: XRechnung (pure XML) or ZUGFeRD, a PDF/A-3 with the XML embedded, using the EN 16931 profile or higher.
- Belgium: Peppol BIS Billing 3.0 (UBL), sent over the Peppol network.
- France: Factur-X, UBL or CII, sent through an accredited platform.
When this starts to matter
- Belgium: since 1 January 2026, invoices between Belgian VAT-registered businesses must be structured e-invoices, in principle sent over Peppol. (einvoice.belgium.be)
- Germany: since 1 January 2025, every business must be able to receive e-invoices. For issuing domestic B2B invoices, transition rules apply until the end of 2026, and until the end of 2027 for businesses with a previous-year turnover of up to €800,000. Small businesses under the Kleinunternehmer rule are exempt from issuing. (BMF FAQ E-Rechnung)
- France: all businesses must be able to receive e-invoices from 1 September 2026. Small and medium-sized businesses must issue them from 1 September 2027.
The mandates cover domestic B2B invoices. Sales to consumers are out of scope.
Your options as a Stripe user
1. A Stripe App Marketplace app
Stripe names Billit as its "preferred e-invoicing partner". Several other e-invoicing apps are listed on the Stripe App Marketplace, each covering a different set of countries and formats. An app reads your Stripe invoices and handles conversion and delivery. When comparing apps, check:
- which formats and profiles it produces. In Germany, ZUGFeRD MINIMUM and BASIC WL don't count as e-invoices.
- whether credit notes are supported.
- where it gets your customers' identifiers, such as the Peppol ID or Leitweg-ID.
- whether you can download the XML and a validation report.
- where the data is stored.
2. Build it yourself with webhooks
Stripe documents the flow:
- Listen for invoice events. Stripe suggests
invoice.created, because a finalized invoice can no longer be edited if a submission is rejected.invoice.finalizedalso works. - Fetch the full Invoice object.
- Map its fields to your provider's format.
- Send it.
- Store the confirmation and the delivery status.
Customer VAT numbers go in the Customer's tax_ids. Stripe has no native field for Peppol participant IDs and suggests storing them in Customer metadata, for example under peppol_participant_id.
The hard parts are rarely the webhook:
- mapping Stripe's discounts, taxes and rounding onto EN 16931 business rules,
- credit notes,
- validating against the official rule sets (KoSIT for XRechnung, the Peppol BIS schematrons),
- handling asynchronous rejections,
- archiving the files.
3. Move invoicing elsewhere
Some billing and accounting platforms produce e-invoices themselves. Moving there means migrating subscriptions or duplicating invoices, which is a big change for a business that's happy with Stripe Billing.
Is Stripe going to build it?
In its Sessions 2026 announcements, Stripe listed a "fully integrated Stripe and Billit solution" for e-invoicing and e-reporting on its Stripe Tax roadmap. That points to a partner integration, not Stripe generating the files itself. Stripe says roadmap items aren't commitments. (Stripe blog)
Where evoicely fits
evoicely is being built as a self-serve Stripe app for developers and small B2B SaaS.
- Formats: ZUGFeRD (EN 16931) and XRechnung for Germany, then Peppol BIS 3.0 for Belgium.
- Validation: each file is checked with the official validators, and you get the report.
- Credit notes: supported from the start.
It's planned, not available yet. Join the waitlist to hear when it is.
This is general information, not legal or tax advice. Check what applies to your business with your tax advisor.