Payment Terms
Payment terms drive due dates and early-pay discounts on invoices and bills. Define Net 30, Due on Receipt, or 2/10 Net 30 once, assign defaults per customer or vendor, and DayZero calculates dates automatically.
Key capabilities
- Standard terms expressed as days until due — Due on Receipt (0), Net 10, Net 15, Net 30, Net 45, Net 60, Net 90
- Custom terms with any non-negative day count
- Early-payment discount terms: a discount percentage plus a discount window (e.g. 2% off if paid within 10 days)
- Auto-generated display names:
Net 30,Due on Receipt, or2/10 Net 30 - One default term per business — setting a new default automatically clears the previous one
- Per-customer and per-vendor default term, which auto-fills onto their invoices and bills
- Automatic due-date calculation: due date = issue date + days until due
- Discount deadline and discount-amount calculation for eligible terms
- Discount-eligibility check that compares a payment date against the discount window
- One-click seeding of the eight default terms for a new business
- Deactivate so historical documents keep their term while it disappears from pickers
- Every create/update/deactivate is written to the audit log
How it works
A term stores a day count and optional discount. When a document is created for a customer or vendor, DayZero reads their default term (or the document's chosen term) and derives the dates.
flowchart TD
term["Payment term (days + optional discount)"] --> assign["Set as customer / vendor default"]
assign --> doc["Invoice or bill created"]
doc --> due["Due date = issue date + days_until_due"]
doc --> disc{"Has early discount?"}
disc -->|"Yes"| deadline["Discount deadline + discount amount"]
disc -->|"No"| skip["No discount"]How to use it
- Open Payment Terms and click New Term — or Seed defaults to load the standard set in one click.
- Enter a Name (e.g.
Net 45) and Days until due (use0for Due on Receipt). - For an early-payment discount, set Discount % and Discount days (e.g.
2and10for2/10 Net 30). - Toggle Set as default to make this the business-wide default — the previous default is cleared automatically.
- Assign a default term to a customer or vendor from their record; it then auto-fills on their new invoices and bills.
- Override the term on any individual invoice or bill when a one-off arrangement applies.
- To retire a term, Deactivate it — it leaves the pickers but stays attached to existing documents.
Pro tips
- Use short terms (Net 15 or Due on Receipt) for new customers until they establish a payment pattern, then relax them.
- Early-payment discount terms pay for themselves in faster cash collection —
2/10 Net 30offers 2% off for paying 20 days early. - Deactivate, don't recreate: deactivating preserves the term on historical invoices and the audit trail; deleting would orphan that history.
- Changing a term's day count only affects documents created afterward — already-issued invoices keep the due date they were stamped with.
- Set defaults at the customer/vendor level so your team never has to remember terms per document.
In-depth guide
Display name logic
The display name is derived, not stored:
- Discount term → like
2/10 Net 30(discount percent / discount days / net days). - Zero-day term →
Due on Receipt. - Everything else → like
Net 30.
Default terms seeded
| Term | Days until due | Discount |
|---|---|---|
| Due on Receipt | 0 | — |
| Net 10 | 10 | — |
| Net 15 | 15 | — |
| Net 30 (default) | 30 | — |
| Net 45 | 45 | — |
| Net 60 | 60 | — |
| Net 90 | 90 | — |
| 2/10 Net 30 | 30 | 2% within 10 days |
Seeding is a no-op if the business already has terms, so it is safe to call repeatedly.
Date and discount math
- Due date = issue date + days until due.
- Discount deadline = issue date + discount days (only when a discount is configured).
- Discount amount = total × discount percent ÷ 100.
- Eligibility = a payment qualifies for the discount only when the payment date is on or before the discount deadline.
Default-term behavior
- A business should have a single default term.
- When you create or update a term with Set as default enabled, DayZero first clears the default flag on every other term — guaranteeing the new one is the sole default.
- Customers and vendors each carry their own default term, which takes precedence when their documents are created.
Accounting impact
Payment terms don't post journal entries themselves — they drive dates:
- Due date feeds AR/AP aging buckets, dunning and reminder timing, and cash-flow forecasting.
- Discount deadline and amount feed early-payment workflows.
Accurate terms therefore keep the AR/AP aging report and collections trustworthy.
Edge cases
- A term referenced by invoices or bills is detached rather than deleted, so deleting (or deactivating) never breaks those documents.
- Net day counts must be ≥ 0; Due on Receipt is simply 0 days.
- Deactivated terms remain valid on existing documents but are hidden from new-document pickers.