e-Faktura API
v1 Guides MK Get started

e-Faktura API

Known issues with UJP

This page lists what we have seen UJP’s e-Faktura system do in live tests that differs from UJP’s own documentation, or that blocks a document type. Each entry says what happens, what Merot does about it, and what you can do meanwhile. We remove an entry as soon as UJP resolves it; changes are also noted in the changelog.

Important

Observed on UJP’s TEST environment on 30 September 2026. Production behaviour has not been verified yet. We have reported these to UJP.

Storno is refused by UJP

What happens: every storno (POST /v1/einvoices/{id}/storno) is refused by UJP with E1025 — Invalid void request: Invalid reference for this document type, returned as HTTP 500. Our storno follows UJP’s published storno example field by field, and the same reference to the original (its EUID) is accepted by UJP on debit notes. We tested self-issued and third-party invoices, and both a new and the original document id.

What Merot does: the storno ends in status invalid, with UJP’s exact message in lastError and in GET /v1/einvoices/{id}/errors, and an einvoice.ujp_error webhook. It is not retried and does not ask for a second signature. The original invoice is untouched and stays valid at UJP.

Meanwhile: corrections (POST /v1/einvoices/{id}/correction) are accepted by UJP and work normally.

Credit note (110) cannot be issued with sales tax indicators

What happens: UJP’s live codebook that pairs document types with tax indicators allows only DDV-22, DDV-24 and DDV-26 on a credit note (documentType: "110"), while UJP’s own credit note example uses DDV-A.

What Merot does: validation follows UJP’s live codebook, so a 110 with DDV-A (or another sales indicator) is refused with 422 validation_failed on lines[].taxIndicator, before anything is signed or sent. Debit notes (120) are accepted by UJP with sales indicators and a reference to the original invoice.

Undocumented field length limits

UJP documents no maximum length for some fields but refuses longer values with E4024 … exceeds the character limit. Measured live:

FieldAcceptedRefused
Document number (number)20 characters40
Line description (lines[].description)255 characters500
Notes (notes)250 characters500

Merot enforces these limits in its own validation (422 before signing), so you see the problem immediately instead of after a signature.