DEKRA 1.0 — registries
Every closed value list of the format, generated from
App\Services\Dekra\DekraRegistry — the same constants the validator enforces.
Each list is also published as a JSON file with the shape
{"registry": …, "version": "1.0", "values": […]};
php artisan dekra:publish --check fails when a published file and the code drift.
Some lists are deliberately open and are not here: payment methods, entity types, exemption reasons, and the document's own wording everywhere. A format that stores what a document says cannot refuse a document because the world used a word a list had not heard of.
Kinds of paper
- Registry
- registry/document-types.json
- Field
documents[].document_type- Unlisted
- error — the file is invalid
The kind of document, not its accounting treatment. credit_note is the one type a consumer negates when summing an archive; amounts themselves are always positive.
invoicecredit_notedebit_notecorrective_invoiceself_billed_invoiceproformareceiptcontractwaybillother
How a document relates to another
- Registry
- registry/reference-types.json
- Field
references[].type- Unlisted
- error — the file is invalid
With references[].signature filled, corrects pins an amendment to one exact prior version of the document it amends.
correctsreplacessettlespurchase_ordercontractdespatch_advicereceipt_adviceprojectother
Kinds of tax
- Registry
- registry/tax-types.json
- Field
items[].taxes[].type,totals.tax_breakdown[].type- Unlisted
- error — the file is invalid
OTHER exists so an unlisted regime is representable rather than refused, with tax_type_name carrying what the document called it.
VATGSTSALESEXCISEWITHHOLDINGOTHER
Tax categories, UNTDID 5305
- Registry
- registry/tax-categories.json
- Field
items[].taxes[].category,totals.tax_breakdown[].category- Unlisted
- error — the file is invalid
The codes PEPPOL BIS validates against, so a category read here maps to a billing message unchanged. Z, E, AE, K, G and O mean no tax is due and require a zero rate.
SZEAEKGOLMB
Fiscalisation schemes
- Registry
- registry/fiscal-schemes.json
- Field
fiscal.scheme- Unlisted
- error — the file is invalid
Which authority or fiscal device stamped the document. POS is a fiscal register with no national scheme named; values under any scheme are stored exactly as issued.
IT-SDIPL-KSEFHU-NAVPT-ATCUDES-TBAIES-VERIFACTUGR-MYDATAHR-FISKRO-EFACTURABR-NFEIN-IRNMX-CFDICL-DTETR-EFATURAKR-ETAXSA-FATOORARS-EFAKTURAPOSOTHER
Allowance and charge reasons, UNTDID 5189 / 7161
- Registry
- registry/allowance-reasons.json
- Field
allowances_charges[].reason_code- Unlisted
- warning — the file stays valid
Only the codes that appear on the paper this format reads. An unlisted reason is stated in reason with a null code, never forced into the nearest match.
AAABLADRDLFCHDINPCQDSHTDVAB
Registers a party identifier can come from
- Registry
- registry/identifier-schemes.json
- Field
issuer.identifiers[].scheme,recipient.identifiers[].scheme- Unlisted
- warning — the file stays valid
Listed schemes and any well-formed COUNTRY:REGISTER are accepted; only a malformed scheme is an error. There are more registers in the world than in this list, and refusing a document because a country is missing from it would be the provincialism the qualifier exists to remove.
VATGLNLEIDUNSEU:EORILV:REGNLT:REGNEE:REGNPL:REGNDE:HRBFR:SIRETGB:CRNIT:CFES:NIFNL:KVKSE:ORGNRFI:YTUNNUSUS:EINUS:TINCA:BNBR:CNPJMX:RFCIN:GSTININ:PANAU:ABNNZ:NZBNSG:UENJP:CNAR:CUITZA:TRNAE:TRNSA:TINTR:VKNCN:USCCKR:BRNOTHER
Conformance profiles
- Registry
- registry/profiles.json
- Field
profile- Unlisted
- error — the file is invalid
What a file promises, weakest to strongest: core ⊂ billing ⊂ fiscal ⊂ archive. A collection is only as strong as its weakest document.
corebillingfiscalarchive
Signature profiles
- Registry
- registry/signature-profiles.json
- Field
signature_profile- Unlisted
- error — the file is invalid
local (HMAC-SHA256) proves the file is intact and nothing about who produced it; issuer (Ed25519) proves origin against a published public key.
localissuer