UBL Rendering API Reference
Upload a UBL 2.1 invoice or credit note and receive a clean, professionally formatted PDF preview. The API parses the UBL XML, identifies the Peppol BIS profile or national CIUS from the CustomizationID, maps all EN 16931 Business Terms to a readable layout, and returns a downloadable PDF. Supports Peppol BIS 3.0, PINT, XRechnung UBL, and plain EN 16931 UBL.
https://api.invoicexml.com/v1/render/ubl/to/pdf
POST /v1/render/xml/to/pdf,
which accepts any supported invoice XML and detects the syntax itself. Both routes behave identically, so keep this one if the explicit format documents intent, or switch to the generic one to drop the format check from your code.
Code Example
curl -X POST https://api.invoicexml.com/v1/render/ubl/to/pdf \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "[email protected]" \ -F "language=en"
Try it out online, no coding required
Upload an XML file and get a readable PDF preview instantly, right in your browser.
Request
| Parameter | Type | Description |
|---|---|---|
| file * | binary | The XML invoice file to render as PDF. |
| language | string | Language for PDF labels and date formatting. Values: en, de, fr. Defaults to en. |
Content-Type: multipart/form-data
Headers
| Header | Value |
|---|---|
| Authorization * | Bearer YOUR_API_KEY |
| Content-Type | multipart/form-data |
Response
200 Rendered PDF
Returns the rendered PDF as a binary file.
Useful resources
Companion material for integrating against the API.
Frequently Asked Questions
Does this support UBL credit notes?
Yes. Both <Invoice> and <CreditNote> root elements are supported. Credit notes are rendered with appropriate labelling.
Which Peppol profiles are supported?
Peppol BIS Billing 3.0, PINT (Peppol International), and national profiles including NLCIUS (Netherlands) and EHF (Norway). The profile is auto-detected from the CustomizationID.
Can I render XRechnung files encoded in UBL syntax?
Yes. XRechnung allows both UBL and CII syntax. If your XRechnung file uses UBL syntax, this endpoint renders it correctly.
Is there one endpoint that takes any invoice XML?
Yes, POST /v1/render/xml/to/pdf. It accepts CII, UBL Invoice, and UBL CreditNote documents and detects the syntax from the root namespace. This UBL path is a permanent alias of it, so both routes behave identically and neither is going away. Use the generic one when the incoming format varies, this one when the explicit route documents intent.
Is the invoice data stored?
No. Files are processed entirely in memory and deleted immediately after the PDF is returned. No invoice data is written to disk or retained.
What is the maximum file size?
20 MB. UBL files are typically 5–50 KB, so this limit is never a constraint in normal usage.