From 8350815a8c6987b288551848eda1c678739c8d4a Mon Sep 17 00:00:00 2001 From: Anders Betts Date: Mon, 21 Sep 2026 23:09:57 +0200 Subject: invoices: text rows, duplicate and payment link (schema v12); smtp address checks --- docs/DECISIONS.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'docs/DECISIONS.md') diff --git a/docs/DECISIONS.md b/docs/DECISIONS.md index b52f8ec..125d19b 100644 --- a/docs/DECISIONS.md +++ b/docs/DECISIONS.md @@ -213,6 +213,20 @@ kept verbatim from the STATE.md they were pruned from (2026-09-21). configured `series_ib` and the historical `IB` series as ingående balans, so old books keep working. "Nästa fakturanummer" is editable in Bolaget → Fakturauppgifter (owner only). +26. **Invoicing follow-ups (2026-09-21)**: schema v12 adds + `invoice_rows.is_text` and `invoices.paid_date`/`payment_voucher_id`. + Invoices accept **text rows** (`"text": true`): description only, no + amount, excluded from totals and the posting voucher; at least one + priced row is required. The invoice detail gets `u = duplicera` (same + customer, rows and references, dates reset to today, due = today + + payment days) and `b = kvittera betalning`, which prefills the ordinary + voucher form (D `bank_account`, K `invoice_receivable_account`, both + editable, underlag attachable) and, after posting, calls + `invoice.pay`, which requires the voucher to credit the receivable with + exactly the invoice total. Partial payments are out of scope. Lists + show `betald `. SMTP: `smtp_from`/`smtp_reply_to` are validated + as e-mail addresses (settings.set and mail config), with the sender's + display name taken from the org name. ## Completed work formerly listed under "Pending decisions" -- cgit v1.3