2.9.1¶
Released: TBD
Highlights¶
- Supplier credit notes now work. Applying and canceling a supplier credit actually posts to the ledger and adjusts the supplier invoice — the second of the deferred Accounting Placeholder Audit feature builds.
Added¶
- Supplier credit application (audit #36–#39). Creating a supplier credit linked to a supplier invoice now posts the GL reversal (DR accounts payable, CR expense), lowers the invoice's outstanding balance, cancels the credited lines via the
supplier_invoice_detail_idlink, sets statusAPPLIED, and computesdue_amount.cancelSupplierCreditnow reverses all of that instead of doing nothing. See Supplier Credit Application.
Changed¶
- None.
Fixed¶
- Supplier credit note creation could fail.
SupplierCreditDetailInput.to_orm_modelpassednotethrough raw, leakingUNSETinto the database insert when a line had no note; it now usesoptional_field.
Migrations¶
- None. No schema change — all fields (
supplier_credit_status,due_amount,supplier_invoice_detail_id) already existed; this wires the behaviour.
Frontend impact¶
- Creating a supplier credit against a supplier invoice now reduces that invoice's outstanding balance and shows the credit as
APPLIED; canceling a supplier credit now actually reverses it. No GraphQL contract change.
Versioning notes¶
- PATCH bump (
uv run python scripts/bump_version.py 2.9.1 --changelog-stub): makes an existing-but-inert feature functional plus a bugfix, no schema change.