Enterprise Payment Terms, Credit Policy, Early-Settlement Discounts (2/10 Net 30), Stock Release Holds & Working Capital Studio
Take command of your cash conversion cycle: configure COD,PIA Upfront Deposit, Net Days, and End-of-Month (`30 Days EOM`) maturity formulas; incentivize rapid cash collection with `2/10 Net 30` early-settlement discounts; automatically block warehouse stock dispatch when debtors fall overdue; simulate invoice due dates and late interest (`APR %`); and govern legal Retention of Title clauses.
1. Plain-English Working Capital 101: Net vs. EOM, 2/10 Net 30 & Credit Spread
Profitable businesses can still run out of cash if they pay their suppliers in 7 days while waiting 60 days for customers to pay them. The **Enterprise Payment Terms & Working Capital Hub** (`PaymentTerm/index`) gives you four financial levers to accelerate cash inflow and protect your inventory:
1. Five Commercial Maturity Formulas (`term_type`)
- Cash on Delivery / Immediate (`cod`): Due on the exact day the invoice is issued (`Issue Date + 0 Days`). Goods are only released against cleared EFT or card settlement.
- Payment in Advance / Upfront Deposit (`pia`): Requires a mandatory upfront deposit (e.g., `50%` or `100%`) before warehouse picking or job initiation begins.
- Net Calendar Days (`net`): Due strictly $N$ calendar days after the invoice date (e.g.,
Net 14orNet 30: an invoice dated `10 Oct` is due `09 Nov`). - Days After End of Statement Month (`eom`): Standard South African trade account practice (`30 Days from Statement EOM`): first jumps to the last day of the invoice month, then adds $N$ days (e.g., an invoice dated `10 Oct` jumps to `31 Oct` + 30 days = `30 Nov`).
- Staged Project / Delivery Milestone (`milestone`): Splits settlement into an upfront deposit (`deposit_required_pct`, e.g., `50%` on order) and a final balance (`50%` due $N$ days after commissioning/delivery).
2. How "2/10 Net 30" Early-Settlement Discounts Work
In commercial finance, 2/10 Net 30 means: "The full invoice is due in 30 calendar days, BUT if the customer pays within 10 days of the invoice date, they receive a 2% early-settlement discount."
• Pay by 11 Oct (Day 10): Pay R 9,800 (Save R 200 / 2%)
• Pay by 31 Oct (Day 30): Pay full R 10,000
Keystone X calculates both the Early Discount Cutoff Date and the Net Settlement Payable automatically on invoices and in the Due-Date Simulator!
2. Command Center Banner & 6 Working Capital KPI Cards
Navigate to System Settings → Payment Terms & Credit Policy (`PaymentTerm/index`).
📸 SCREENSHOT PLACEHOLDER: payment-terms-working-capital-command-center.png
- Navigate to
PaymentTerm/index?mode=directory. - Capture the Command Center Header Banner, the 6 Working Capital KPI Cards, the 4-Mode Pipeline strip, the Payment Terms Register table, and the 1-Click Industry Credit Blueprints below it.
| KPI Card | Working Capital Telemetry Displayed |
|---|---|
| 1. Credit Terms | Count of active payment terms broken down by Net · EOM · COD formulas. |
| 2. AR Debtors Book | Total open Customer Accounts Receivable (`R X`), mapped customer coverage (`X/Y Cust`), and red badge showing total Overdue AR. |
| 3. AP Suppliers & POs | Mapped Vendor count (`X/Y Vendors`), active Purchase Order count, and total committed PO Spend (`R X`). |
| 4. Early Discounts | Count of terms offering early-settlement incentives (`2/10 Net 30 Ready`). |
| 5. Stock-Release Guard | Count of terms enforcing warehouse dispatch holds when overdue, plus your configured grace period (`Grace: X Days`). |
| 6. Credit Cycle Avg | Compares your average AR Customer Credit Days against your average AP Supplier Credit Days (`Working Cap Spread: +X Days`). A positive spread means suppliers fund your inventory longer than customers take to pay! |
3. Mode 1: Payment Terms Register & 1-Click Industry Blueprints (`?mode=directory`)
Stage 1 displays every configured credit policy with a live **"If Issued Today"** maturity preview showing the exact Due Date calculated from today's date, plus 8 **1-Click Industry Credit Blueprints** (`PaymentTerm/provisionBlueprint/{key}`):
| Blueprint Code | Term Name & Formula | Early Discount / Upfront Deposit | Stock Hold & Late APR | Recommended Credit Limit |
|---|---|---|---|---|
COD |
Cash on Delivery / Immediate EFT (0 Days COD) |
100% Upfront Payment Required | Dispatch Hold · 0.00% APR | R 0 (Cash Only) |
PIA-50 |
50% Upfront Deposit · 50% On Delivery (Milestone) |
50% Deposit Required Before Dispatch | Dispatch Hold · 15.25% APR | R 25,000 |
NET-07 |
7 Days Net — Express Trade Account (Net 7) |
None · 2-Day Grace Period | Dispatch Hold · 15.25% APR | R 15,000 |
NET-14 |
14 Days Net — Standard Commercial (Net 14) |
None · 3-Day Grace Period | Dispatch Hold · 15.25% APR | R 35,000 |
2-10-NET-30 |
2/10 Net 30 — Early Settlement Incentive (Net 30) |
2.00% Discount within 10 Days | Dispatch Hold · 15.25% APR | R 75,000 |
NET-30 |
30 Days Net — Corporate Trade Account (Net 30) |
None · 5-Day Grace Period | Dispatch Hold · 15.25% APR | R 100,000 |
EOM-30 |
30 Days from Statement EOM (EOM + 30d) |
None · 5-Day Grace Period | Dispatch Hold · 15.25% APR | R 150,000 |
NET-60 |
60 Days Net — Enterprise / Government (Net 60) |
None · 7-Day Grace Period | Standard Credit · 12.00% APR | R 250,000 |
4. Mode 2: AR & AP Exposure Matrix & Bulk Account Assignment (`?mode=exposure`)
Clicking Stage 2 (`PaymentTerm/index?mode=exposure`) displays your live debtor and creditor exposure grouped by Payment Term—showing how many Customers, Open AR Rands, Overdue AR Rands, Suppliers, and Purchase Orders sit under each credit policy.
1-Click Bulk Unmapped Account Assignment (`PaymentTerm/bulkAssign`)
Have customers or suppliers that were created without an explicit payment term? Use the **Bulk Credit Term Assignment** bar in Mode 2: select a Payment Term, choose the target scope (Unmapped Customers, All Customers, Unmapped Suppliers, or All Suppliers), and click **Apply Credit Policy**. When assigning to customers, Keystone X also initializes their recommended `credit_limit` if they don't already have one!
5. Mode 3: Interactive Maturity, Early Discount & Late Interest Simulator (`?mode=simulator`)
Clicking Stage 3 (`PaymentTerm/index?mode=simulator`) opens the interactive **Invoice Maturity, Early Discount & Late Interest Simulator**:
- Enter any Invoice Issue Date, Invoice Amount (`R`), Payment Term, and hypothetical Days Late Past Maturity.
- Keystone X immediately computes:
- Required Upfront Deposit (`R`): Amount due before warehouse stock dispatch or job start.
- Early-Settlement Window: Exact cutoff date (`early_cutoff_date`), Rand discount saved (`early_discount_amt`), and net discounted payout (`early_net_payable`).
- Final Maturity Due Date & Grace Cutoff: Exact calendar or EOM maturity date (`due_date`) plus the grace period cutoff (`grace_cutoff_date`) before warehouse stock holds trigger.
- Compounded Late-Payment Interest (`APR %`): Calculates daily simple/compounded moratory interest (`balance × APR/100 × days_late/365`) and total enforceable recovery amount.
6. Mode 4: Contractual Clauses, Retention of Title & Stock-Hold Rules (`?mode=clauses`)
Clicking Stage 4 (`PaymentTerm/index?mode=clauses`) displays the legal contract schedule printed on Quotes, Pro-Forma Invoices, Tax Invoices, Delivery Notes, and Purchase Orders for each term—including South African **Retention of Ownership (`Pactum Reservati Dominii`)**, **Upfront Deposit Dispatch Conditions**, and **National Credit Act / Late Interest Notices**.
7. Creating & Editing a Payment Term (`PaymentTerm/add` & `edit/{id}`)
| Field Label & Input Name | Purpose & Operational Impact |
|---|---|
Term Code & Name (term_code, term_name) |
Short uppercase code (`COD`, `NET-30`, `EOM-30`, `2-10-NET-30`) and full commercial title printed on customer/supplier documents. |
Maturity Formula Type (term_type) |
cod (Immediate), pia (Upfront Deposit), net (Net Calendar Days), eom (Days After Statement Month-End), or milestone (Staged Deposit + Balance). |
Ledger Scope (applies_to) |
Both (Customer AR & Supplier AP), Customer AR Only, or Supplier AP Only. |
Credit Maturity Days (days) |
Number of days (`0` to `365`) added by the maturity formula. |
Early-Settlement Discount % & Window Days (early_discount_pct, early_discount_days) |
Configures early-payment incentives (e.g., `2.00%` discount if paid within `10` days). |
Mandatory Upfront Deposit % (deposit_required_pct) |
Percentage (`0%` to `100%`) required before a Quote/Pro-Forma releases warehouse stock or converts to fulfillment. |
Overdue Grace Period & Late Interest APR % (grace_period_days, late_interest_apr_pct) |
Days of grace after `due_date` before automated dunning/stock holds trigger, and annual percentage rate (`APR %`) charged on overdue balances. |
Recommended Default Credit Limit (default_credit_limit) |
Suggested credit facility (`R`) assigned when onboarding customers onto this term. |
Hold Warehouse Stock Dispatch If Overdue (hold_stock_if_overdue) |
When checked, raises a warehouse dispatch hold alert if a customer on this term has invoices past their grace cutoff date or unpaid upfront deposits. |
Default AR / AP Switches (is_default_ar, is_default_ap) |
Sets this policy as the automatic default for new Customers (`AR`) or new Suppliers/Purchase Orders (`AP`). |
8. 3-Tab Credit Policy & Working Capital Studio (`PaymentTerm/settings`)
Clicking **Customize Policy** (`PaymentTerm/settings`) opens the 3-Tab Credit Governance Studio:
- Tab 1 — Default AR & AP Terms (`?tab=defaults`): Set the system-wide default Customer AR Payment Term (`NET-30`), default Supplier AP Payment Term (`NET-30`), toggle Auto-Calculate Invoice Due Date from Customer Term, and toggle Show Early-Settlement Discount Box on Invoice PDFs.
- Tab 2 — Credit Hold, Stock Guard & Interest (`?tab=credit`): Toggle Enforce Warehouse Stock-Dispatch Hold on Overdue / Deposit Terms (`pt_enforce_stock_dispatch_hold`), toggle Enforce Customer Credit Limit Guard on Invoicing (`pt_enforce_credit_limit_guard`), set the default Overdue Grace Period (`3 Days`), default Late-Payment Interest Benchmark (`15.25% APR`), and default Early-Discount GL Account (`4900-DISC-ALLOWED`).
- Tab 3 — Contractual & Retention of Title Clauses (`?tab=legal`): Customize the legal **Retention of Ownership Clause** ("All goods, serialized equipment, and materials supplied remain the sole and absolute property of the Seller until paid for in full...") and **Late Payment & Interest Notice** printed on document footers.