Statement page & paying
The link in the statement email and text opens the statement page on the restaurant site. No login is needed: the link itself is the key. The page shows the statement with live balances, lets the restaurant download the PDF, and lets them pay any unpaid invoice by ACH (bank transfer) or card, one invoice at a time.
Who uses it
- Restaurants: open the page, check balances, pay.
- Supplier staff: never use it directly, but see its results as payments on the invoices.
How it works
Opening the link
| Situation | What the restaurant sees |
|---|---|
| Loading | Loading statement… placeholders |
| Valid link | The statement (below) |
| Wrong or unknown link | This statement link is no longer valid · The link may have expired or been replaced. Please contact the supplier for a current statement. |
| Everything on it is paid | Header and totals, then All invoices on this statement are paid · Thank you — there is nothing left to pay. instead of the invoice list |
Statement links don't expire. An old statement keeps working; it just shows its invoices as Paid once they are.
What's on the page
Header
- Statement #{number} with a status chip: Open, Overdue (red) or Paid (green). Paid when nothing is left to pay; Overdue when any invoice still to be paid was Overdue on the Statement Date; otherwise Open.
- Generated {MM/DD/YYYY}: the Statement Date.
- Download PDF (an icon only, on phones). Shown only when the PDF was saved. It opens the PDF in a new tab.
- Supplier (logo or a shop icon, and name) and Restaurant (name).
Summary
- Aging, across {n} invoice(s), and Total Amount Due in large type: the live total.
- Five tiles: Current, 1–30 Days, 31–60 Days, 61–90 Days, 90+ Days, live. Tiles past 30 days are highlighted when they hold money.
Outstanding Invoices
| Column | Shows |
|---|---|
| Invoice | Invoice number |
| Invoice Date | As stored, e.g. 2026-10-03, or — |
| Due Date | MM/DD/YYYY, New York calendar |
| Status | See below |
| Amount | Live amount owed; when part-paid, a second line of {invoice total} |
| Action | Pay Now, Contact supplier to pay this invoice, or nothing |
On phones each invoice is a stacked row: number, status and amount on top, then the invoice date and due date, with the action on the right.
Status per invoice (the live status wins over the one frozen on the statement)
| Live payment status | Frozen label | Chip | Payable |
|---|---|---|---|
| Paid | any | Paid | No |
| Processing | any | Processing | No |
| Void | any | Void | No |
| Unpaid / Partially paid | Overdue | Overdue | Yes |
| Unpaid / Partially paid | Open | Open | Yes |
Note that Overdue isn't re-evaluated: an invoice that was Open on the Statement Date stays Open on the page even after its due date passes.
Paying an invoice
- Click Pay Now on an Open or Overdue invoice. The row opens (Pay Now turns into Cancel) with Select a payment method:
- Pay {amount} with ACH: Pay directly from your bank account. Processing typically takes 1–3 business days.
- Pay {amount} with Card: Pay with credit or debit card. Payment processed immediately. Credit card payments include a 2.9% + 30¢ processing fee, applied by the payment provider.
- Clicking one shows Starting payment… and disables both, then sends the restaurant to Stripe's checkout for that invoice's current balance.
- After paying or cancelling, Stripe sends them back to the same statement page.
| Back from Stripe | Banner |
|---|---|
| Card paid | Invoice {number} paid successfully. (green). The invoice turns Paid without a reload. |
| ACH submitted | Bank transfer for invoice {number} is processing — this can take 1–3 business days. The invoice turns Processing. |
| Cancelled at Stripe | Your payment was canceled — you can try again below. |
| No update within 3 minutes | Taking longer than expected — refresh shortly to see the latest payment status. |
| Invoice became Void meanwhile | No banner |
| Couldn't start the checkout | Under the buttons: We couldn't start the payment. Please try again. |
After returning, the page checks again every 3 seconds, for up to 3 minutes, until the invoice reads Paid or Processing. It only does this in the browser tab that started the payment; another tab, or a copied return link, shows no paid, processing or timeout banner. The canceled banner is the exception: any visit to a cancel return link shows it.
Contact supplier to pay this invoice replaces Pay Now when an invoice has no pay link (rare: statements create one for every invoice). It opens an email to the supplier, or a phone call when there's no email.
Why a checkout can't start
The page shows only We couldn't start the payment. Please try again., whatever the cause. The real reason, which support can find, is one of:
| Reason (server message) | When |
|---|---|
| Invalid statement link | The statement link is unknown |
| Invalid payment link | The invoice's pay link was replaced or used up |
| This payment link has expired. Please request a new one from your supplier. | The invoice's pay link is older than 90 days since it was last refreshed |
| Invoice does not belong to this statement | Tampered link |
| This invoice has already been paid | Paid in the meantime |
| This invoice payment is currently being processed. Please wait for the payment to complete before attempting another payment. | A bank payment started clearing after the page was loaded |
| Invoice is not yet available for payment. Order must be ready for delivery or delivered. | The order was moved back |
| This invoice has nothing to pay. | The order owes nothing any more (for example it was cancelled) |
| Supplier payment configuration not found / Payment processing not configured for this supplier | The supplier hasn't set up online payments |
| Order not found | The order is gone |
Retrying doesn't help with any of these. The restaurant needs a fresh statement or must contact the supplier.
Calculations
What Stripe charges
| Method | Charged |
|---|---|
| ACH | The invoice's balance. No fee to the restaurant. |
| Card | The balance + 2.9% of the balance + $0.30, the fee rounded to the cent (half up), unless the supplier has chosen to absorb card fees |
| Balance | ACH charge | Card fee | Card charge |
|---|---|---|---|
| $412.50 | $412.50 | 412.50 × 2.9% = 11.9625 + 0.30 = 12.2625 → $12.26 | $424.76 |
| $99.99 | $99.99 | 2.89971 + 0.30 = 3.19971 → $3.20 | $103.19 |
| $412.50, supplier absorbs | $412.50 | $0.00 | $412.50 |
The page's buttons show the balance only (Pay $412.50 with Card), and its card caption mentions the fee even when the supplier absorbs it. Full fee rules: Processing fees.
Payment allocation. Each payment goes to exactly one invoice: the one whose Pay Now was clicked, for its full balance. A statement payment never spreads across invoices and never pays part of an invoice; to pay three invoices the restaurant goes through checkout three times. Nothing on a statement is paid "against the statement" as a whole.
Knock-on effects
Example: the restaurant pays INV-1041 ($300.00 owed, invoice total $500.00, $200.00 cash already recorded) by card, from statement #41 (Total Due $399.99).
| Area | Before | After |
|---|---|---|
| Charged by Stripe | — | $300.00 + fee $9.00 (8.70 + 0.30) = $309.00 |
| Payments on INV-1041 | Cash $200.00 · Paid | + Card (online) $300.00 · Paid. The $9.00 fee is recorded on the payment as paid by the customer, not added to the $300.00. |
| INV-1041 amount owed | $300.00 | $0.00 |
| INV-1041 payment status | Partially paid | Paid |
| Bookkeeping | Income $200.00 (Cash Payment) | + Income $300.00 in Online Payment, linked to the payment. Any part of Stripe's own fee the $9.00 doesn't cover (all of it, when the supplier absorbs the card fee) is booked as an Order Transaction Processing Fees expense in Other Expense – Transaction Processing Fees. See Bookkeeping effects. |
| Store credit | — | Unchanged |
| Pay link of INV-1041 | Active | Used up |
| Statement page (live) | INV-1041 Open/Overdue $300.00 · Total $399.99 | INV-1041 Paid · Total Amount Due $99.99 |
| PDF, email, View Statements | $399.99 | Unchanged ($399.99) |
| AR aging and reports | INV-1041 $300.00 outstanding | INV-1041 settled |
| Stock | — | Unchanged |
| Messages | — | The usual payment receipt for an online payment (verify which; not traced here) |
Same invoice, paid by ACH instead:
| Area | Right after checkout | When the bank clears (1–3 business days) |
|---|---|---|
| Charged | $300.00 | — |
| Payment on INV-1041 | ACH $300.00 · Processing | Paid |
| INV-1041 payment status | Processing | Paid |
| Amount owed / statement page | Still $300.00 in the Total Amount Due | $0.00 |
| Bookkeeping | Nothing booked yet | Income $300.00, dated the settlement day, and the fee expense (Stripe's reported fee) |
While the ACH clears, the invoice reads Processing whatever else was paid, and the page hides its Pay Now.
Where it shows up
- The statement page at
/statement/<link>on the restaurant site (restaurant.getclipp.com). - Stripe's hosted checkout.
- The supplier sees the payment on the invoice, in payments and in bookkeeping.
Permissions
Anyone with the link. The statement link is a long random code; each invoice can only be paid through a statement that lists it.
Decisions
- Pay one invoice at a time, by ACH or card, through Stripe. ACH is listed first. (#1997)
- Checkout returns to the statement page, not the supplier's pay page. The restaurant stays on the restaurant site. (#1997)
- The server checks the invoice belongs to the statement. A statement link can't be combined with another invoice's pay link. (#1997)
- Only the paying tab polls and shows a banner. A copied return link can't fake a "paid" banner. (#1997)
- The page lives in the restaurant app, same address and layout. Old links keep working. (#2448)
- An invoice is paid on its sale order, from both the statement and the pay link. Both show and charge the same balance. (#2448)
- Void and Processing invoices don't make a statement Overdue. (#2448)
Known limitations
- One error message for every checkout failure, including ones a retry can't fix (expired pay link, supplier not set up).
- Pay links can expire under a live statement: 90 days after the link was last refreshed, Pay Now stops working.
- The card caption always mentions the 2.9% + 30¢ fee, even when the supplier absorbs it.
- Overdue is frozen: the page doesn't turn Open invoices Overdue as days pass.
- Statements sent before the move to sale orders may still read an older order for an invoice that was never moved: its balance, status and Pay Now then follow that older order, which doesn't see an ACH clearing on a partly paid invoice (verify whether any such statements remain).
- Download PDF expires after 10 minutes on an open page; reload to get a new link.
- ACH still counts in the Total Amount Due while it clears.
FAQ
The restaurant paid but the PDF still shows the old total. The PDF is a snapshot. The page shows the live balance.
The restaurant clicked Pay Now and got "We couldn't start the payment". Usually the supplier hasn't set up online payments, the invoice was just paid, or its pay link expired. If the link expired, send a new statement: it makes a fresh pay link for any invoice whose link has run out (it doesn't extend links that are still valid).
They paid by bank transfer. Why does the page still show the amount in the total? It counts once the bank clears it (1–3 business days). The invoice itself shows Processing and can't be paid again from the page.
Can the restaurant pay the whole statement in one go? No. Each invoice is a separate checkout.
Can they pay part of an invoice from the statement? No. Checkout is always for the invoice's whole remaining balance.
Why didn't they see the "paid successfully" banner? They came back in a different tab or browser, or the card took over 3 minutes to confirm. Refreshing shows the current status.
Do statement links expire? No. Only the pay links behind each invoice do, after 90 days.