Skip to main content

Module check_printing_handler

Module check_printing_handler 

Source
Expand description

Check printing HTTP surface — hand-authored (user-owned; see metaphor.codegen.yaml).

Four routes over the CheckPrintingService:

  • PUT /accounting/checks/sequences — register/replace a bank-journal sequence (auto/manual mode, starting number)
  • POST /accounting/checks/allocate — allocate the next number(s) from an AUTO sequence (atomic; distinct under concurrency)
  • POST /accounting/checks — record one printed check (auto: allocates inside the verb transaction; manual: validates + unique)
  • POST /accounting/checks/:id/void — void a printed check (the number stays consumed)

Hosts mount these behind their own auth layers; the registry verbs belong behind an accounting-officer role gate at the host. The tenant-consistency check refuses a body company that disagrees with the ambient scope.

Tenancy (ADR-0029): the company_id fields in the wire bodies are the legacy twin — kept so unstripped callers compile and run unchanged; the module keys no statement on them and the composing service’s tenancy decorator scopes the underlying reads/writes.

Structs§

AllocateBody
RecordCheckBody
RegisterSequenceBody
VoidBody

Functions§

create_check_printing_routes
The check printing routes (sequence registration + allocation + registry + void).