Voucher gap explanations
Documented explanations for gaps in the voucher series, per BFNAR 2013:2.
Endpoints
POST/api/v1/companies/:companyId/voucher-gap-explanations— Document a gap in the verifikationsserie (BFL 5 kap 6-7 §§).
POST /api/v1/companies/:companyId/voucher-gap-explanations {#post-voucher-gap-explanations-create}
voucher-gap-explanations.create · scope bookkeeping:write
Document a gap in the verifikationsserie (BFL 5 kap 6-7 §§).
Records an explanation for one or more missing voucher numbers in a series. Required when a number is unaccounted for during audit. Statutory basis: BFL 5 kap 6-7 §§ (verifikationsnummer i löpande följd utan luckor); BFNAR 2013:2 kap 8 § governs the systemdokumentation that surfaces the gap. Idempotent. Dry-runnable.
Use when: You're responding to a voucher-gap audit finding and need to document the cause. Also used by migration flows that claim numbers without filling them.
Don't use for: Falsifying a series — every gap MUST have a genuine explanation. The dashboard surfaces these for auditor review.
Pitfalls
- Idempotency-Key is mandatory.
- gap_end must be >= gap_start; a single-number gap has gap_start = gap_end.
- voucher_series is a single uppercase letter (A–Z); the same series + period + numeric range must not already exist.
Risk: low · Idempotent: yes · Reversible: no · Dry-run supported: yes
Example request
{
"fiscal_period_id": "a8f1…",
"voucher_series": "A",
"gap_start": 142,
"gap_end": 145,
"explanation": "Migration from previous bookkeeping system on 2026-05-12 — series A148-onwards corresponds to the new gnubok numbering; numbers A142-A145 were assigned in the legacy system to manual paper vouchers archived offline (BFL 7 kap retention applies). Paper vouchers are stored in the company archive under reference 2026-PAPER-Q2."
}
Example response
{
"data": {
"id": "0e9c…",
"voucher_series": "A",
"gap_start": 142,
"gap_end": 145
},
"meta": {
"request_id": "req_…",
"api_version": "2026-05-12"
}
}