efrisapi.com

Error codes / 2831

EFRIS error 2831 — the excise taxDetails group needs a taxRateName

A credit note's taxDetails group for tax category "05" must carry a non-empty taxRateName. It is optional elsewhere, which is why it is easy to miss.

What it actually means

The excise group on a credit note is validated more strictly than the equivalent group on an invoice. An empty or absent taxRateName is accepted on the invoice and rejected on the note.

The fix

Set taxRateName on the category "05" group when building credit note tax details, carrying across the name from the original invoice where you have it.

tax_details.append({
    "taxCategoryCode": "05",           # excise duty
    "taxRateName":     "Excise Duty",  # required on a credit note (2831)
    "taxRate":         excise_rate,
    "taxAmount":       f"-{abs(excise_tax):.2f}",
    "grossAmount":     f"-{abs(excise_gross):.2f}",
    "netAmount":       f"-{abs(excise_net):.2f}",
})

Why this happens

It usually appears immediately after fixing 1462: once the excise fields are mirrored correctly, the excise taxDetails group exists, and its own validation applies.

Related


The EFRIS API Kit handles this case already — it is one of the rejections the library was calibrated against. This page stays free either way.