Skip to content

Rejection codes ​

When Kura cannot produce the output you asked for, the report carries ok: false, an errorCode, a human-readable error, and sometimes a suggestedLevel. This page lists every code, what it means, and what to do.

Everything not listed here converts, with the changes recorded as issues in the report.

Input ​

CodeMeaningWhat to do
PARSE_ERRORthe bytes are not a PDF, or are damaged beyond qpdf's recoverycheck the file; if it opens elsewhere, please report it with the file
BAD_INPUTno input buffer was suppliedAPI misuse
BAD_LEVELthe level string is not one Kura knowssee The standards
IMAGE_INPUT_WRAPPEDnot an error: the input was a JPEG and was wrapped as a one-page PDFnothing; reported as an issue

Encryption ​

CodeMeaningWhat to do
PASSWORD_REQUIREDthe document has a user password and none, or the wrong one, was suppliedpass --password
ENCRYPTED_ADEPTthe document is bound to Adobe ADEPT digital rights management; the content key is not in the fileno tool can decode this without the owner's key material
ENCRYPTED_UNSUPPORTEDa non-standard security handler that needs external key materialas above

Standard encryption, RC4 and AES with an empty or supplied password, is removed automatically and is not a rejection.

Content the target forbids ​

CodeMeaningWhat to do
TRANSPARENCY_P1the document uses transparency and the target is PDF/A-1 or PDF/X-1a/X-3, which forbid it; the engine had no way to flatten ituse suggestedLevel, usually 2b or x4; or --allow-visual-risk to force transparency off; or a build with PDFium, which rasterizes the affected pages
JPX_IN_PDFA1a JPEG 2000 image could not be transcoded for PDF/A-1use a part 2 or later level
CMYK_MIXED_P1PDF/A-1 with both RGB and CMYK content under a single output intentuse suggestedLevel
RGB_UNDER_CMYK_P1RGB content under a CMYK output intent at PDF/A-1use suggestedLevel
X1A_COLOR_UNCONVERTIBLEPDF/X-1a needs every colour in CMYK and something could not be converted, for example a mesh shading with per-vertex colourthe detail names the object; suggestedLevel is x4, which permits it
FACTURX_REQUIRES_PDFA3an e-invoice was requested at a level that cannot carry attachmentsuse 3b, 3u, 3a or 4f

E-invoice payloads ​

CodeMeaningWhat to do
EINVOICE_NOT_A_DOCUMENTthe XML is not a recognised invoice or order document, or is not XMLcheck the payload
EINVOICE_PROFILE_UNKNOWNthe document declares no guidelinepass --facturx-profile if you know it
EINVOICE_PROFILE_INVALIDthe declared level is outside the hybrid code listfix the payload
NO_EINVOICE--extract-invoice found no attachmentthe file is not a hybrid invoice

Process ​

CodeMeaningWhat to do
CONVERT_TIMEOUTthe watchdog fired; exit status 3raise PDFA_TIMEOUT, or treat the file as hostile
SERIALIZE_ERRORthe converted document could not be writtenplease report with the file
INTERNAL_ERRORan unexpected failure was caught at the boundaryplease report with the file
SIGN_NO_PAGESsigning was requested on a document with no pages

Findings that are not rejections ​

Two issue codes deserve a mention because they change how to read a report:

  • SCAN_INCOMPLETE: a pass could not read part of the document, so its findings may be incomplete for that content. Treat the check as inconclusive rather than clean.
  • Any issue whose detail ends in (visual risk): a repair that can change appearance, made because --allow-visual-risk was set.

Dual-licensed under AGPL-3.0 and Commercial License.