Bills execution
Read the exact action guide for prerequisites, identifier discovery, supported input, effects, captured successful and refused responses, verification and recovery. Synthetic fixture results do not authorize a live mutation or establish a provider outcome.
- List bills: List bills newest first. Filter by status, contact or issue date, search the number, reference and notes, and sort by issue date, due date, number, total or status. The response carries the outstanding total for the filtered set.
- Create a bill: Save a draft bill from a supplier. Totals are computed from quantity, unit amount, line discount and tax, never taken from document totals, so the document always foots. The supplier number remains reserved if the bill is later voided.
- Get a bill: Read one bill with its lines and the payments against it.
- Update a bill: Change a draft bill. Sending lines replaces them all and recomputes discounts and totals. Financial details are locked after approval.
- Approve a bill: Lock a draft supplier bill so it can take payments. Repeating the action returns the already-approved bill.
- Void a bill: Void a bill while keeping its supplier number and history readable. Refused while payments are recorded against it.
- Record a payment: Record money paid against a bill. The paid total is the sum of the payments, and the document becomes paid once they cover it.
Evidence
Actual Books route handlers and the exported Worker were exercised against five local SQLite D1 concern databases with all committed migrations, the real posting Durable Object and local R2. Route captures use synthetic verified Auth; Worker captures use synthetic Auth transports. Nexus, Brand, Notify, Pay, Mercury and Xero responses are explicitly simulated at the provider transport boundary. Captures prove local request/response behavior and canonical SDK projection, not live bank access, payment movement, email delivery, provider eligibility, tax compliance, encrypted custody, scheduled execution, deployment or production completion. Fixture identities, credentials, addresses and records authorize no live operation.