{"version":1,"endpoints":[{"method":"POST","path":"/v1/invoice/xrechnung","price":"$0.03","description":"Generate a German XRechnung 3.0 e-invoice (UBL 2.1 XML, EN 16931) from plain JSON. Totals, VAT breakdown and rounding are computed server-side per the official rules — the most common source of rejected e-invoices. Returns the XML plus computed totals and warnings.","inputSchema":{"bodyFields":{"invoiceNumber":{"type":"string","required":true,"description":"Invoice number (BT-1)"},"issueDate":{"type":"string","required":true,"description":"YYYY-MM-DD (BT-2)"},"dueDate":{"type":"string","description":"YYYY-MM-DD; or send paymentTermsNote"},"buyerReference":{"type":"string","required":true,"description":"Leitweg-ID / buyer reference (BT-10, mandatory for XRechnung)"},"seller":{"type":"object","required":true,"description":"name, city, zip, countryCode, vatId, email"},"sellerContact":{"type":"object","required":true,"description":"name, phone, email (mandatory per BR-DE-2)"},"buyer":{"type":"object","required":true,"description":"name, city, zip, countryCode, email"},"paymentIban":{"type":"string","required":true,"description":"IBAN for SEPA credit transfer"},"lines":{"type":"array","required":true,"description":"1-500 items: name, quantity, unitPrice, vatRate (percent), optional unitCode/vatCategory"}}},"outputSchema":{"type":"object","properties":{"format":{"type":"string","description":"xrechnung-ubl-3.0"},"xml":{"type":"string","description":"The complete XRechnung document"},"totals":{"type":"object","description":"Computed amounts in EUR: sumLines, taxExclusive, taxTotal, taxInclusive, payable, vatBreakdown[]"},"warnings":{"type":"array","items":{"type":"string"}},"generatedAt":{"type":"string"}}}},{"method":"POST","path":"/v1/invoice/validate","price":"$0.01","description":"Pre-check an incoming e-invoice (XRechnung UBL or CII XML) against the priority EN 16931 / XRechnung business rules: mandatory fields, Leitweg-ID, payment data, and cent-exact recalculation of all sums and VAT. Findings carry official rule IDs (BR-CO-10 etc.). A pre-check, not the official KoSIT validation.","inputSchema":{"bodyFields":{"xml":{"type":"string","required":true,"description":"The invoice XML (UBL or CII), max 2 MB"}}},"outputSchema":{"type":"object","properties":{"mode":{"type":"string","description":"pre-check (official KoSIT mode is a planned premium)"},"syntax":{"type":"string","enum":["ubl","cii"]},"verdict":{"type":"string","enum":["pass","fail"]},"findings":{"type":"array","items":{"type":"object","description":"ruleId, severity, message"}},"checkedRules":{"type":"number"}}}},{"method":"POST","path":"/v1/invoice/extract","price":"$0.005","description":"Extract structured JSON (parties, lines, totals, payment data) from an e-invoice: XRechnung UBL/CII XML or a ZUGFeRD/Factur-X PDF (the embedded XML is pulled from the PDF). Ideal for agents ingesting incoming invoices.","inputSchema":{"bodyFields":{"xml":{"type":"string","description":"Invoice XML — send either xml or pdfBase64"},"pdfBase64":{"type":"string","description":"ZUGFeRD/Factur-X PDF, base64-encoded, max ~2.8 MB"}}},"outputSchema":{"type":"object","properties":{"source":{"type":"string","description":"'xml' or the embedded filename, e.g. 'pdf:factur-x.xml'"},"syntax":{"type":"string","enum":["ubl","cii"]},"invoice":{"type":"object","description":"invoiceNumber, issueDate, dueDate, currency, buyerReference, seller, buyer, paymentIban, lines[], vatBreakdown[], statedTotals"}}}}],"network":"base-sepolia","payTo":"0x92E8E55222ef348c57B13ce47C84C0cC95b945fC"}