Search
Maventa services and reach Finland e-invoicing in Finland Mass Printing Service Sweden e-invoicing in Sweden Norway e-invoicing in Norway Denmark e-invoicing in Denmark Netherlands e-invoicing in the Netherlands Belgium e-invoicing in Belgium Germany e-invoicing in Germany Estonia e-invoicing in Estonia Latvia e-invoicing in Latvia Poland e-invoicing in Poland Italy e-invoicing in Italy France e-invoicing in France Spain e-invoicing in Spain
Poland

Regional spotlight

Formats? Mandates?
We've got you covered!

  • Overview of B2G, B2B and B2C e-invoicing in Poland.
  • Key formats, networks and channels you may need to support.
  • High-level regulatory and compliance considerations.

Read the Regional spotlight

e-invoicing in Poland

Poland uses KSeF (Krajowy System e-Faktur), the national e-invoicing system, as the centralised platform for all invoice traffic. Both domestic and cross-border invoices are reported to KSeF using the FA(3) structured invoice format defined by the Polish tax authority. For domestic B2B transactions, KSeF is the sole delivery channel — invoices are issued through KSeF, and KSeF handles delivery to the recipient. For cross-border invoicing, invoices are reported to KSeF and additionally sent via the Peppol network when full Peppol address details are provided.

Poland is currently supported only for selected partners. Please contact Maventa Support for more information on how to set this up with your ERP for Polish companies.

Polish company account registration

When registering a new Polish company via the API, the Polish VAT number must be used as the company identifier. At the moment, company registration requires the vendor to have KYC approval from Maventa. Contact Maventa support to get started.

Identifier Description Format Validation
VAT number Polish VAT identifier (NIP) PL1234567890 Structural validation via VIES

Sending in Poland

KSeF reporting and delivery

All invoices sent through Maventa for Polish companies are reported to KSeF. When Maventa sends an invoice to KSeF, the invoice is converted to the FA(3) format — the official KSeF structured invoice schema, mandatory from 1 February 2026. For each successfully submitted invoice, KSeF returns a UPO confirmation and the sender can download both the UPO and the cleared FA(3) document via the API.

Domestic invoices are routed exclusively to KSeF by Maventa — the sender does not need to take any additional steps. KSeF acts as the delivery platform and handles forwarding the invoice to the recipient. No other delivery channel is used for domestic traffic.

Cross-border invoices are reported to KSeF and additionally sent via the Peppol network — but only when the full Peppol address details are provided in the sending API metadata. This means both the recipient’s Peppol endpoint ID and the operator’s Peppol identifier must be explicitly included.

If the full Peppol address details are not provided for a cross-border invoice, the invoice is reported to KSeF but is not delivered to the recipient via Peppol or any other channel. The invoice status shows as SENT because KSeF accepted it, even though the invoice has not actually reached the recipient. Maventa does not automatically reroute these invoices — the sender must manually reroute the invoice to email or print if these delivery channels are enabled for the sender account.

Email and print delivery

Email and postal delivery (printing) are available as additional delivery channels but are not applied automatically by Maventa. If an invoice needs to be delivered via email or print — for example when Peppol delivery was not possible or no Peppol address was provided — the sender must reroute the invoice to these channels manually. Printing is handled in Finland, and all postal deliveries are sent from Finland.

UPO — official confirmation of receipt

For every invoice successfully submitted to KSeF, Maventa receives a UPO file (Urzędowe Poświadczenie Odbioru — Official Confirmation of Receipt). The UPO is issued by the Polish tax authority system and serves as formal proof that the invoice was received and registered by KSeF.

The UPO typically contains:

The KSeF ID is also available via GET /v1/invoices/{id}/actions in the field channel_details.external_number.

Downloading the UPO and cleared document

Both the UPO file and the CLEARED_DOCUMENT (the FA(3) file as submitted to KSeF) are listed in the files array of the GET /v1/invoices/{id} response. Each file entry includes an id, filename, type, and mimetype.

File type Description
UPO Official Confirmation of Receipt from KSeF. Available only for sent invoices.
CLEARED_DOCUMENT The FA(3) invoice file as registered with KSeF. Can be downloaded for bookkeeping or legal compliance purposes.

To download a file, use GET /v1/invoices/{id}/files/{file_id} with the id from the file entry.

Why is the UPO important?

The UPO serves as legal evidence that the invoice was delivered to the official KSeF platform. It provides an audit trail for compliance, dispute resolution, and customer support. The UPO can be stored in ERP or invoice management systems as the official delivery confirmation for Polish invoices.

Archiving is the partner’s responsibility. Polish invoices must be archived for 10 years.

Receiving in Poland

For domestic traffic, invoices sent by other Polish companies arrive via KSeF. Maventa retrieves these invoices from KSeF and delivers them to the recipient’s Maventa account, where they can be downloaded. For international traffic, invoices can be received via the Peppol network or directly from other Maventa customers — this requires Peppol SMP registration (see below).

Received cross-border invoices are not currently reported to KSeF. KSeF is primarily the structured invoice system for invoices issued by entities in scope — especially domestic Polish transactions. Invoices from foreign suppliers typically remain outside KSeF unless the supplier has a Polish fixed establishment participating in the supply or voluntarily uses KSeF.

Address Type Description Example address Activation Requirement
Peppol address Official identifier for the Peppol network. Uses the VAT number with scheme 9945. 9945:xxxxxxxxxxx Created when the company registers to receive from Peppol

Peppol SMP registration

To receive invoices via Peppol, a Polish company must first be registered in the SMP (Service Metadata Publisher). The SMP registration determines which document formats the company can receive over the Peppol network.

Maventa does not yet support Peppol SMP registration for Polish companies. This capability is expected to become available within the coming weeks.

When registration becomes available, the following document types are registered in the SMP:

Peppol BIS Billing 3.0 — Invoice

DocumentIdentifier urn:oasis:names:specification:ubl:schema:xsd:Invoice-2::Invoice##urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0::2.1

ProcessIdentifier urn:fdc:peppol.eu:2017:poacc:billing:01:1.0

Peppol BIS Billing 3.0 — Credit Note

DocumentIdentifier urn:oasis:names:specification:ubl:schema:xsd:CreditNote-2::CreditNote##urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0::2.1

ProcessIdentifier urn:fdc:peppol.eu:2017:poacc:billing:01:1.0

Scanning

Scanning is available in Poland via the AutoScan solution.

For step-by-step instructions on enabling receiving, registering for Peppol, and setting up scanning, see the invoice receiving integration guide.

e-invoicing formats used in Poland

ERP integrations for Polish companies should use Peppol BIS Billing 3.0 for both sending and receiving. This is currently the only format with a guaranteed working conversion to and from the Polish FA(3) format used by KSeF.

Format Standard Notes
FA(3) Polish national standard Official KSeF structured invoice schema defined by the Polish tax authority, mandatory from 1 February 2026. All invoices sent to KSeF are converted to this format.
Peppol BIS Billing 3.0 EN16931 Recommended format for ERP integrations. Used for cross-border Peppol delivery alongside KSeF reporting.

Maventa also supports Polish-localised PDF for both sent and received invoices.

Back to top

AI Chat Support 24/7

  • Get help via AI chat available 24/7 whenever it suits you
  • Chat extensively uses Maventa support pages, websites, and blogs in its answers
  • If you need assistance that the AI cannot provide, you can also ask a customer service agent to join the conversation
  • Support requests processed Monday to Friday
Cancel Open chat

Got feedback?

Did you not find what you were looking for? Or was something explained unclearly? Or just want to share your thoughts? We are happy to hear your feedback!

Note: This form is not a way to get support, this is only for feedback for the documentation website. If you need support, please contact Maventa support.

Integration Guide Services & Reach API Specification Changelogs Integration guide Getting Started Invoice sending Consumer Invoicing Printing Email invoicing Invoice receiving Scanning Detect Fraud reporting Webhooks Reference implementations Maventa Connector Embeddable User Interface Peppol Network Document Exchange Invoice Response Self-billing support Invoicing formats Validation Peppol BIS 3.0 Finvoice 3.0 Document types and type codes Maventa JSON (table) Maventa JSON (json schema) Companies and Settings Department Company Users Billing Accounts receivable Ropo's reminder and collection service Amili Kassavirta Amili Perintä Services and reach Maventa services and reach e-invoicing in Finland Mass Printing Service e-invoicing in Sweden e-invoicing in Norway e-invoicing in Denmark e-invoicing in the Netherlands e-invoicing in Belgium e-invoicing in Germany e-invoicing in Estonia e-invoicing in Latvia e-invoicing in Poland e-invoicing in Italy e-invoicing in France e-invoicing in Spain Api specification API overview Getting Started Common & authentication API Invoices API Documents API Companies & settings API Lookups API Detect API Validator API Receivables API Billing API Scanning API B2CFI API B2CNO API B2CSE API Partner API Getting Started Account Configuration API Methods Invoice Sending API Methods Invoice Receiving API Methods B2C Norway API Methods B2C Finland API Methods Other API Methods Changelogs Product changelog Developer Changelog
Clear Send

Enter your credentials to Maventa testing environment, to authenticate and try things out with the Swagger UI. This will fetch a Bearer token using OAuth2 with the endpoint POST https://ax-stage.maventa.com/oauth2/token. The token is stored in your browser's session storage (cleared when you close the tab) and used in Swagger calls done from this documentation website. The token is valid for 1 hour.

Never use your production credentials here. This is only for testing the Maventa test environment in the Swagger UI.
Reset All None
eui global company lookup document:receive document:send invoice:receive invoice:send company:read company:write validate receivables:assignments analysis billing:reports partner:invoice_delivery_actions partner:lookups partner:takeovers partner:lyanthe_scan_service fi_bank_message:send fi_bank_message:receive
Cancel Sign In