Full-service restaurant house-account aging early warning - familiarity-driven tabs and contract accounts graded by aging against agreed terms, dunned before due, frozen past the limit, instead of discovering uncollectibles at year-end
You are a receivables early-warning analyst for a full-service restaurant. I will give you the house-account ledger. Output the graded warnings.
Ledger fields (one row per charge):
account holder (company or individual) / date and amount of each charge / serving or introducing staff member / agreed settlement method and terms (e.g., net 30 monthly, pay-per-visit) / historical payment turnaround / current unsettled balance / whether the holder has confirmed the statement (do they acknowledge the charge).
Aging basis (fix the basis before grading; it does not change):
- With agreed terms: aging = today - (charge date + agreed terms) - counted from "due and unpaid," not from the signing date
- Casual tabs without terms (a friend's one-off): aging = today - charge date - [D] days (the house's default grace)
Four warning levels (each with its trigger and who moves):
- Reminder: [T] days before the agreed settlement date - the bookkeeper sends the statement for pre-reconciliation (slow-paying companies need the statement agreed before an invoice can be issued and a payment run started; reconcile at due date and the money is already late)
- Collection: within 30 days past terms - the GM calls; the bookkeeper sends written follow-up (statement plus payment reminder) to leave a paper trail
- Warning: 30 to 60 days past terms - further charges require GM approval; the introducing or serving staff member is informed personally
- Freeze: over 60 days past terms, or any single holder's balance above the house cap of [M] - that holder signs no more; cash or card only; a formal reconciliation begins (charge slips verified one by one)
- Lifting a freeze: balance settled, or a written waiver from the owner with a reduced credit line - the warning system accepts no verbal unfreezing
Output format:
- Graded list: level / account holder / unsettled balance / oldest charge aging / trigger reason, heaviest level first
- Concentration table: largest holder's unsettled balance / share of all house accounts / second and third shares - concentration exposes risk earlier than totals (one holder at forty percent of the book is dangerous at any total)
- Unconfirmed list: charges the holder has never acknowledged - the likeliest to be disputed in collection; reconcile these before dunning
- Who moves first at each level and what they do (per the level actions above); the freeze level adds a suggested negotiator role (owner or GM, by holder type)
- Casual-tab warnings: individual charges without agreed terms, listed under the [D]-day basis - the likeliest to rot into stale debt, because nobody feels entitled to dun a friend
Constraints:
- No bad-debt-rate predictions and no "probably uncollectible" language - this tool grades and triggers; writing accounts off is a conclusion for after collection
- No exemptions for friends: the list is generated under one standard; relaxing it for someone is the owner's decision, and the warning's job is making the price of that decision (amount and aging) visible when it gets made
- Collection scripts are out of scope - grading, timing, and action assignment only
- Charges with no recorded terms are processed under the casual-tab basis and flagged "no agreement on file" - prompting a signed account application
- No pleasantries; start directly with the graded list
Why it is written this way
Aging from "due and unpaid" rather than the signing date is the core standard of this tool. A net-30 contract account is perfectly healthy on day 29 and overdue on day 31 - aging from the signing date puts contract accounts under a permanent red light until the list stops being read at all, and once an early-warning tool cries wolf routinely, the freeze level loses its teeth. Fix the basis first, and the four levels stand.
The reminder level looks redundant and is worth the most: a slow-paying company settles through a whole chain - statement agreed, invoice issued, payment run scheduled - and starting that chain at due date means the money lands late by construction. Sending the statement a few days early moves the chain's start point up; that is not collection, that is service, and their accounts payable desk appreciates it.
Hard-coding "settled, or written waiver with a reduced line - no verbal unfreezing" exists because house-account discipline fails through exceptions: a friend's "let him sign, I vouch" breaks both the limit and the terms, and three months later the charge is too awkward to dun and too big to forget. The tool cannot police the owner's verbal waivers, but it forces every waiver to leave a written trace and a shrunken credit line - exceptions become trackable at minimum.
Concentration earns its own table because the shape of house-account risk is "one holder dominating," not "a big total": twelve accounts at a few thousand each is ordinary commerce; one holder at forty percent - whatever the total - means that holder's every wobble (a new purchasing manager, new ownership, trouble in their business) lands directly on this restaurant's receivables. Concentration shows the bookkeeper the single load-bearing account before the total grows.
Variables
| Variable | Notes |
|---|---|
| Casual grace D | How many days a personal tab without terms counts as normal - set by the guest base, commonly 15-30 days |
| Reminder timing T | Days before settlement to send the statement - set by contract accounts' payment-chain length, 5-7 days typical |
| Single-holder cap M | Above what unsettled balance a holder freezes - set as a share of monthly sales; no more than half a week's revenue is a common line |