EU e-invoicing · REST · EN 16931

The e-invoicing API for every EU mandate

POST one universal JSON invoice. InvoXML routes it by destination_country and returns the legally required XML — FatturaPA 1.2 for the Italian SDI, XRechnung 3.0 for Germany, Factur-X 1.08 for France, Peppol BIS 3.0 for 14 EU countries — validated against the official XSD schemas and Schematron business rules before it leaves the API.

No SDK lock-in · Stateless, EU-hosted · Free sandbox tier

invoxml · /convert live
$ POST /convert destination_country: "IT"
200 OK · FatturaPA 1.2 (SDI) · XSD Schematron · 182 ms

Standards-compliant output, generated from the official rule-sets

🇮🇹 FatturaPA v1.2
🇩🇪 XRechnung 3.0 CII
🇫🇷 Factur-X 1.08 CII
🇪🇺 Peppol BIS 3.0 UBL
📐 EN 16931 core
Live response

JSON invoice in, compliant e-invoice XML out

Select a destination country to inspect the exact request payload and the validated XML InvoXML returns. These are real converter outputs, checked against the published XSD and Schematron rules.

POST/convert
200 OKFatturaPA 1.2🇮🇹

The XML on the right is the actual converter output for the request on the left — element order, namespaces and code-lists exactly as the national specification requires.

Build once

One JSON schema replaces four XML mappings

FatturaPA, XRechnung, Factur-X and Peppol UBL each demand a different syntax, element order, namespace set and code-list. InvoXML hides all of it behind a single, versioned JSON contract.

01

Send JSON

POST your invoice to /convert with a destination_country. One schema covers every output format.

02

Map & validate

InvoXML builds the target XML in the mandated element order, then validates it against the official XSD schema and the EN 16931 / national Schematron rules.

03

Submit clean XML

Receive ready-to-submit FatturaPA, XRechnung, Factur-X or Peppol BIS — no post-processing, no SOAP, no vendor SDK.

Ready to paste

The whole integration in one request

Authenticate with your RapidAPI key, POST the invoice, read the XML body. There is no step four.

# Convert a universal invoice to XRechnung (Germany)
curl -X POST "https://rapidapi.com/Banzaidev/api/invoxml-eu-e-invoicing-format-converter/convert" \
  -H "X-RapidAPI-Key: <YOUR_KEY>" \
  -H "X-RapidAPI-Host: invoxml-eu-e-invoicing-format-converter.p.rapidapi.com" \
  -H "Content-Type: application/json" \
  --data-binary @invoice.json
# pip install requests
import requests

with open("invoice.json") as f:
    payload = f.read()

res = requests.post(
    "https://rapidapi.com/Banzaidev/api/invoxml-eu-e-invoicing-format-converter/convert",
    headers={
        "X-RapidAPI-Key": "<YOUR_KEY>",
        "X-RapidAPI-Host": "invoxml-eu-e-invoicing-format-converter.p.rapidapi.com",
        "Content-Type": "application/json",
    },
    data=payload,
)
res.raise_for_status()
xml = res.text  # validated FatturaPA / XRechnung / Factur-X / Peppol XML
// Node 18+ — native fetch
import { readFile } from "node:fs/promises";

const payload = await readFile("invoice.json", "utf8");

const res = await fetch("https://rapidapi.com/Banzaidev/api/invoxml-eu-e-invoicing-format-converter/convert", {
  method: "POST",
  headers: {
    "X-RapidAPI-Key": "<YOUR_KEY>",
    "X-RapidAPI-Host": "invoxml-eu-e-invoicing-format-converter.p.rapidapi.com",
    "Content-Type": "application/json",
  },
  body: payload,
});
if (!res.ok) throw new Error(`InvoXML ${res.status}`);
const xml = await res.text();
API reference

Five REST endpoints, one payload, predictable errors

Select an endpoint to see what it accepts, what it returns and how it fails.

Why InvoXML

Everything compliance requires, nothing it doesn't

XSD + Schematron validated

Every document is checked against the published schemas and the EN 16931 business rules before the response is sent. Invalid input fails fast with a structured 422.

One JSON, four syntaxes

A single universal payload routes to FatturaPA, XRechnung CII, Factur-X CII or Peppol UBL automatically, based on destination_country.

Pre-flight validation

Dedicated /validate and /validate-xml endpoints let you check any payload or generated XML without spending a conversion.

14 EU countries

Peppol BIS coverage across the network, plus the national CIUS for Italy (SDI), Germany (Leitweg-ID, BR-DE) and France (Chorus Pro buyer reference) out of the box.

Plain REST, plain errors

JSON in, XML out, deterministic status codes. No SOAP envelopes, no client certificates, no proprietary SDK to maintain.

Stateless & GDPR-aligned

No database, no stored invoices. Processing happens in-memory on EU infrastructure (Google Cloud, Milan); nothing is retained beyond the request lifetime.

Coverage

The e-invoice formats EU mandates actually require

National CIUS implementations and the pan-European Peppol network, generated from the same payload.

🇮🇹

FatturaPA 1.2

Italy — Sistema di Interscambio (SDI)

The mandatory Italian format for B2B, B2C and PA invoicing, in the exact SDI XML structure with CodiceDestinatario routing.

v1.2SDI codesMP01–MP23
🇩🇪

XRechnung 3.0

Germany — B2G and B2B

The German CIUS in CII syntax, with Leitweg-ID routing, BR-DE business rules and the mandatory seller contact group.

CIILeitweg-IDBR-DE
🇫🇷

Factur-X 1.08

France — Chorus Pro / 2026 reform

The French–German hybrid profile (ZUGFeRD 2.4) on EN 16931, with the Chorus Pro buyer reference, ready for the September 2026 B2B mandate.

CII D22BEN 16931Buyer ref
🇪🇺

Peppol BIS Billing 3.0

14 EU countries — UBL 2.1

The cross-border standard on the Peppol network, with the correct EAS endpoint scheme per country: BE, NL, PL, ES, AT, SE, DK, FI, PT, NO, CH and more.

UBL 2.1EN 16931EAS schemes
Pricing

Transparent API plans, billed through RapidAPI

Every plan includes all four formats, full XSD + Schematron validation and the complete API surface. Hard monthly limits on every tier — no overage, no surprise billing.

Loading plans…

★ ★ ★ ★ ★ ★

Validated against the official rule-sets — on every call

InvoXML doesn't just build XML, it proves it. Output is checked against the published XSD schemas and the EN 16931 / Peppol / national Schematron rules before you ever see it.

XSD FatturaPA 1.2
XSD UBL 2.1 · CII
Schematron Peppol EN 16931
Schematron EN 16931 core
Rules BR-DE · Chorus Pro

Make EU e-invoicing a single API call

Subscribe on RapidAPI and convert your first invoice in minutes — the Sandbox tier is free.