Create a UBL XML invoice step by step, check the required EN 16931 data, avoid validation errors, and learn when Peppol delivery is required.
UBL stands for Universal Business Language. A UBL invoice is an XML document whose fields identify the supplier, customer, line items, tax treatment and totals in a predictable structure. That lets the customer's accounting system import the data instead of asking someone to retype a PDF. A PDF can still accompany the invoice for human review, but it is a digital document rather than structured invoice data.
Before exporting anything, ask the customer which profile and delivery route they accept. EN 16931 defines the common semantic model, while national or industry profiles can add rules. The customer may accept an XML attachment, require an upload to a supplier portal, or require delivery through Peppol. Those are different requirements, and a valid XML file is not automatically a Peppol submission.
Enter the legal names and addresses of both parties, the supplier tax or VAT identifier where applicable, and the customer's identifier when the transaction requires it. Use the country codes and identifiers requested by the receiving system. Missing party information is one of the easiest ways for an otherwise correct invoice to be rejected.
Use a unique sequential invoice number, an issue date, the currency and a clear due date or payment terms. If the customer gave you a purchase-order or buyer reference, include it in the field they specified. The invoice number and dates should match the human-readable PDF you send with the XML.
Each line needs a useful description, quantity, unit price and tax category. Totals must reconcile: line net amounts, allowances or charges, VAT by rate, total excluding VAT, total VAT and amount due. Do not use a displayed currency symbol where the XML expects a three-letter currency code, and do not change the tax treatment simply to make a validator pass.
Use invoicing or accounting software that can export the requested UBL profile. In Fatūra Pro, create the invoice, open its preview and choose UBL/XML export. Fatūra Pro generates the downloadable structured file; it does not transmit that file through the Peppol network. Send or upload it using the route your customer requested.
Validation checks whether the XML follows the required syntax and business rules. Use a validator that matches the customer's stated EN 16931, national or Peppol profile. Treat the first invoice for a new receiving system as a test: correct every error, keep the accepted file, and confirm that the customer's system imported it successfully.
UBL is an XML syntax used to represent structured invoice data. Peppol is a network and set of interoperability specifications used to exchange documents between registered participants. A tool can export UBL without being connected to Peppol. If the customer requires Peppol, you also need an approved access point or another service that provides delivery.
A structured credit note is its own document type and should refer to the original invoice. It is not simply an invoice whose grand total was changed to a negative number. Check that your export uses the credit-note structure required by the receiving profile, and validate it separately from a normal invoice.
Typical problems include missing VAT identifiers, an unsupported country or tax code, dates in the wrong format, totals that do not reconcile, a missing buyer reference, or a profile mismatch. A file can be well-formed XML and still fail the business rules of the customer's receiving system, which is why profile-specific validation matters.
Fatūra Pro lets you create the readable invoice first and export its data as UBL/XML from the same record. You can also download the PDF for the person reviewing it. Start with a free account to build the invoice; UBL/XML export is available on the Essential plan. Always confirm and validate the format your customer expects.
No. A PDF is designed for a person to read. UBL is structured XML designed for software to import and process. A customer may ask you to provide both.
No. Fatūra Pro exports a downloadable UBL/XML file. It does not provide Peppol network delivery, so use an access-point service if the customer specifically requires Peppol.
Ask the receiving customer or portal for its accepted profile and validation rules. EN 16931 is the common European semantic standard, but country and network profiles can add constraints.
Validate at least the first invoice and credit note for each receiving system, and validate again when customer requirements or your export software changes.
Use the official guidance for the rules or technical profile that applies to your transaction.