Due date & payment terms
Payment terms say how long a restaurant has to pay. The due date is the invoice date plus that many days. Nobody types a due date in directly.
Who uses it
- Supplier staff set each customer's default terms, and can change the terms on a single order.
- Restaurants see the terms and due date on the invoice, the PDF, statements and reminders.
How it works
The terms
| Terms (as shown) | Days after the invoice date |
|---|---|
| COD | 0 |
| Net 7 Days | 7 |
| Net 15 Days | 15 |
| Net 30 Days | 30 |
| Net 45 Days | 45 |
| Net 60 Days | 60 |
| Net 90 Days | 90 |
The PDF prints them as "COD", "Net 7 days" … "Net 90 days".
Where terms are set
- Per customer: on the customer's page, the Terms field (same seven options, can be cleared). Saved straight away: "Terms updated successfully". Users without full customer access see "Terms: Net 30 Days" as text.
- Per order: on the order, the select labelled Due Date actually picks the terms. Hidden once the order is Delivered or Canceled; greyed out without full order access. Saved with Save Edits.
- Default: when a restaurant places an order, the customer's terms are copied onto it. An order whose customer has no terms is COD. A new customer has no terms set, so their orders are COD until the supplier sets them.
Changing the customer's terms affects new orders only. Existing invoices keep their terms unless changed on the order.
How the due date is worked out
Due date = invoice date + term days. Calendar days, weekends and holidays included.
- No invoice date → the due date counts from the day the order went out, if it has. With neither, there is no due date (and the invoice can't be overdue).
- Change the invoice date or the terms → the due date moves at once.
- The invoice is due through the end of the due date, and overdue from the next day, New York time.
Calculations
| Invoice date | Terms | Due date | Overdue from |
|---|---|---|---|
| 2026-10-03 | COD | 10/03/2026 | Oct 4 |
| 2026-10-03 | Net 30 Days | 11/02/2026 | Nov 3 |
| 2026-12-15 | Net 30 Days | 01/14/2027 | Jan 15 |
| 2026-02-27 | Net 7 Days | 03/06/2026 | Mar 7 |
| 2026-10-03 | Net 90 Days | 01/01/2027 | Jan 2 |
| (none) | Net 30 Days | (none) | never |
A daylight-saving change can't shift the due date: the days are added as calendar dates.
Where it shows up
- Invoice page and PDF: Terms and Due Date (MM/DD/YYYY).
- Invoice list: Due Date column, By Due Date filter and sort.
- The overdue email's "Due Date", payment reminders, statements, and the receivables aging report.
Permissions
| Role | Customer's terms | An order's terms |
|---|---|---|
| Admin, Clerk | Yes | Yes |
| Driver, Warehouse, Sales Person | No (read-only customer access) | Yes (full order access) |
Decisions
- The due date is always worked out, never typed in. It can't drift away from the invoice date and terms. (#2125)
- Counted in calendar days. Adding days to the date itself, not to a timestamp, means no off-by-one across time zones or daylight saving, even on Net 90. (#2125)
- A due date counts from the invoice date, else the dispatch day. An order that hasn't gone out and has no invoice date has no due date. (#2499, #2166)
- Orders copy the customer's terms. A saved order that is still COD takes the customer's terms when it is placed; terms chosen on the order are kept. (#2166)
Specs
# prefix: DTT
Feature: Due date and payment terms
An order copies the customer's payment terms. Its due date is the end of the due day, counted from
the invoice date, or from the dispatch day when the order has no invoice date.
Rule: A new order takes the customer's terms
Scenario: DTT-001 an order created for a customer with terms takes those terms
Given a customer whose terms are Net 30 Days
When an order is created for that customer
Then the order's terms are Net 30 Days
Scenario: DTT-002 an order created for a customer without terms is COD
Given a customer with no terms set
When an order is created for that customer
Then the order's terms are COD
Rule: A saved order that is still COD picks up the customer's terms when it is placed
Scenario: DTT-003 a COD order takes terms set after it was saved
Given a saved order with COD terms
And the customer's terms are now Net 30 Days
When the order is placed
Then the order's terms are Net 30 Days
Scenario: DTT-004 terms already chosen on the order are kept
Given a saved order with Net 15 Days terms
And the customer's terms are now Net 30 Days
When the order is placed
Then the order's terms stay Net 15 Days
Rule: The due date is the end of the due day
Scenario: DTT-005 the due date counts from the invoice date
Given an order with invoice date 2026-10-03 and Net 30 Days terms
Then the order is due at the end of 2026-11-02
Scenario: DTT-006 the due date counts from the dispatch day when there is no invoice date
Given an order dispatched on 2026-10-03 with no invoice date and Net 30 Days terms
Then the order is due at the end of 2026-11-02
Known limitations
- Every supplier is on New York time, including suppliers in other time zones (confirm this is intended).
- Existing orders keep their terms: only orders created or placed afterwards copy the customer's terms.
- The terms field on the order is labelled Due Date.
FAQ
The due date is a Sunday. Is it still due that day? Yes. Terms count calendar days, weekends included.
I changed the customer's terms to Net 30. Why do old invoices still say COD? Customer terms apply to new orders. Change an existing order's terms on the order itself.
Why does this invoice have no due date? It has no invoice date yet (it hasn't gone out), or someone cleared it.