Product/Statuses
Statuses

Five states. One timeline. No ambiguity.

Draft, sent, paid, overdue, void. The state machine is enforced — row actions only show transitions that are allowed.

What you get

The statuses you actually need.

01
Overdue is automatic — set by a daily cron when due_date passes.
02
Archive removes from working list; data preserved.
03
Void is one-way. From any state. Recorded in activity.
04
Restore archived invoices anytime.
Continue exploring

The other two primitives.