Sending PDF invoices via Peppol

Send PDF invoices via Peppol with the eConnect PSB: e-mail or API, IDR recognition and validation.

A PDF invoice is technically not an e-invoice: the data is not in a structured format and accuracy cannot be guaranteed by scan recognition alone. Yet eConnect offers a solution for sending PDF invoices via Peppol. The PSB recognises the PDF via the IDR (Intelligent Document Recognizer), validates the essential fields against the metadata you supply, and converts it into a valid e-invoice.

How it works: you send the PDF together with a set of control metadata (invoice number, amounts, recipient). The IDR recognises the invoice and compares the recognition with your metadata. Does everything match? Then the invoice is sent. Does it not match? Then you receive a notification.

Note: this page describes sending a loose PDF without UBL (recognition via the IDR based on supplied metadata). Do you want to include a PDF as an attachment to an e-invoice you already submit in UBL? See Including attachments under Send an invoice via the API.

Two submission methods

There are two ways to submit a PDF invoice to the PSB. Both methods require the same metadata.

Method 1: via e-mail

Send the PDF as an attachment to the secured e-mail address of your PSB tenant. In the body of the e-mail, place the control metadata in Markdown format:

[factuurnummer](INV-2026-0042)
[totaalfactuur](1.250,00)
[totaalbtw](262,50)
[ontvangerSchemeId](0106)
[ontvangerIdentifier](12345678)
[ontvangerNaam](Voorbeeldbedrijf B.V.)
[ontvangerEmail](finance@voorbeeld.nl)

The tags in square brackets are agreed upon during the initial setup. It is important that these do not change once the connection is live.

Note: The exact e-mail address and available tags are configured per customer by eConnect. Contact TechSupport for the initial configuration.

Method 2: via the GenericSend API

Send the PDF to the GenericSend API and supply the metadata as metaAttributen (key-value pairs):

{
  "factuurnummer": "INV-2026-0042",
  "totaalfactuur": "1250,00",
  "totaalbtw": "262,50",
  "ontvangerSchemeId": "0106",
  "ontvangerIdentifier": "12345678"
}

When submitting via the API you receive a documentId in return. You can link this ID to the invoice in your own software package, so you can track the status of the submission. You can also supply your own documentId.

Required metadata

The following fields are required at minimum:

FieldDescriptionfactuurnummerThe unique invoice numbertotaalfactuurThe total invoice amount including VATtotaalbtwThe total VAT amountontvangerSchemeIdThe Peppol scheme ID of the recipient (e.g. 0106 for KvK)ontvangerIdentifierThe identification number of the recipient (e.g. KvK number)ontvangerNaamThe name of the recipientontvangerEmailThe e-mail address of the recipient

Additional tags can be added in consultation.

Processing flow

After receipt, the PDF goes through the following steps:

  1. Recognition: the IDR recognises the PDF invoice and converts it into an XML invoice (UBL)
  2. Routing fields: the recipient data from the metadata is transferred to the XML
  3. Validation: the control metadata is compared with the values recognised by the IDR. Invoice number, name and identifiers from your metadata may overwrite the recognised values. If the invoice amount or VAT amount differs from the recognition, that field is also overwritten and the invoice fails
  4. Sending or notification: if validation succeeds, the invoice is sent via Peppol (or another configured delivery method). If validation fails, you receive a notification
Error notifications

If validation does not succeed (for example because the recognised amount differs from the supplied amount), there are three ways to receive a notification:

MethodDescriptionE-mailA technical error message by e-mail. The receiving address can be hardcoded, extracted from the XML or metadata, or be the sender's addressWebhookWhen using the API you can configure a webhook address. The PSB sends a status update so you can update the status in your own softwarePlatformThe error message is also visible in the eConnect platform for the relevant document
Invoice lines

With line recognition, the IDR only passes through the invoice lines if the sum of the line amounts matches the total excluding VAT. If the lines do not match, the IDR places the total per VAT category as an invoice line in the XML. Do you want the invoice to fail instead of being sent in that case? This is configurable. If no invoice lines are recognised at all, this can optionally also be configured so the invoice fails instead of being sent without lines; you receive the same notification as for another validation error.

Important: An invoice that has failed cannot be corrected afterwards and sent automatically. The only option is to upload the XML manually via the platform.

When to use PDF via Peppol?

This solution is intended for situations where the invoice source cannot generate a structured format, but you still want to send via Peppol. Typical scenarios:

  • Software packages that only support PDF export
  • Hybrid environments where part of the invoice flow is already digital and part still runs on PDF
  • Phased migration to full e-invoicing

For the best quality and reliability, it is always recommended to deliver directly in UBL format via the API.

Recipient: XML only or also PDF?

Peppol always delivers structured UBL/XML to the recipient. A PDF is only present if the sender embedded or sent one separately, or (legacy platform) if PDF generation from XML is active. XML-only is normal without embed and without generation.

Self-check Inbox, invoice-view rules and search terms: Statuses: XML only or also PDF.

Frequently asked questions
How do I know if my PDF invoice was recognised correctly?

The IDR recognises the PDF and compares the recognised values with the control metadata you supply (invoice number, amounts, recipient). If validation succeeds, the invoice is sent. If validation fails, you receive a notification by e-mail, webhook or in the platform.

What are the two ways to submit a PDF?

You can send a PDF by e-mail to the secured address of your PSB tenant (with metadata in Markdown format), or via the GenericSend API (with metadata as key-value pairs). Both methods require the same control metadata.

Can I correct a failed invoice afterwards and still send it automatically?

No, an invoice that has failed cannot be corrected afterwards and sent automatically. The only option is to upload the XML manually via the eConnect platform.


Want to set up PDF via Peppol? Get in touch with our team for the initial configuration.

Request configuration