Payment statuses & timings
Each payment has its own status, separate from the invoice's. Anything the supplier records by hand (refunds included), and every card payment, is Paid the moment it's saved. Only bank (ACH) payments made online take time: Processing while the bank clears them, sometimes Pending while the customer verifies their account, then Paid or Failed. The invoice's own status (Unpaid, Partially paid, Processing, Paid, Void, Canceled) is worked out from these, as described on Payment status.
Who uses it
- Supplier staff see a payment's status on the invoice and in Records, and wait for bank payments to clear.
- Restaurants see "Processing" on the pay link while their bank payment clears.
How it works
The statuses
| Status | Shown as | Tooltip on the invoice | Which payments | Counts as paid? |
|---|---|---|---|---|
| Paid | Complete next to a bank payment; nothing extra elsewhere | — | Every hand-recorded payment and refund; card; a bank payment once it clears | Yes |
| Processing | Processing | "In progress. Usually completes in 2-4 business days." | A bank payment the customer submitted | No, but it blocks overpaying and second online payments |
| Pending | Pending | "Payment pending. Customer needs to verify their payment method." | A bank payment waiting for the customer to confirm Stripe's small test deposits | No |
| Failed | Failed | "Payment didn't go through. Please retry or update info." | A bank payment the bank rejected, or one never verified | No. It's hidden from Records. |
On the invoice page, a bank payment shows as "ACH: $100.00 (Processing)", with a coloured dot. In Records, a Status line appears on any record that isn't Paid.
What moves a bank payment
Customer submits ──► Processing ──(bank clears, a few business days)──► Paid
│ └────(bank rejects)──────────────────────► Failed
└─(needs verification)─► Pending ──(verified, clears)──► Paid
└──(not verified, ~10 days)──► Failed
Every change is automatic, driven by Stripe. Nobody in the supplier's team can mark a payment paid or failed. The invoice's Activity Log shows the payment as "ACH payment of $100.00 processing", then "Paid online by customer" once it clears, or "ACH payment of $100.00 failed" with a warning icon.
Timings people notice
| What | How long | Where it's stated |
|---|---|---|
| A card payment showing Paid | Seconds | "Pay with credit or debit card. Payment processed immediately." |
| Returning from Stripe to the pay link | The page checks every 3 seconds for up to 3 minutes, then says "Payment Taking Longer Than Expected" | — |
| A bank payment clearing | A few business days (set by the banks; the app says "2-4 business days" on the pay link and invoice, and "1–3 business days" on statements) | pay link, tooltip, statement page |
| Verifying a bank account | About 10 days before Stripe gives up (from the PR, not in Clipp's code) | — |
| The card processing fee reaching Bookkeeping | Moments after the payment | — |
| The bank payment and its fee reaching Bookkeeping | When the payment clears | — |
| A pay link | 90 days from the last time it was sent | — |
| A Stripe checkout | About 36 to 41 minutes, then the restaurant starts again | — |
Calculations
A bank payment that clears
A $100.00 invoice. The customer pays $100.00 by bank on Monday.
| Monday | A few days later (cleared) | |
|---|---|---|
| Payment | Processing | Paid |
| Invoice status | Processing | Paid |
| Balance due shown | $100.00 | $0.00 |
| Recording $100.00 cash by hand | refused: "Nothing is due on this invoice, so there is nothing for this payment to settle." (the clearing $100.00 counts, IMM-034) | refused the same way |
| Pay link | "Your $100.00 payment is being processed…" | Invoice Paid Successfully |
| Receipt | sent to the customer and the supplier | sent again (see Receipts & messages) |
| Bookkeeping | nothing yet | income $100.00, dated the day it cleared, + bank fee expense (ASB-001, ASB-003) |
A bank payment that fails
Same invoice; the bank rejects the payment on Thursday.
| Monday | Thursday (failed) | |
|---|---|---|
| Payment | Processing | Failed, hidden from Records |
| Invoice status | Processing | Unpaid, $100.00 due |
| Messages | receipt sent | nothing is sent to either side |
| Pay link | processing screen | the form shows, but paying fails ("Payment processing failed…"). Send the invoice again for a new link. |
| Bookkeeping | nothing yet | nothing: it was never booked, so there's nothing to undo (ASB-002) |
A refund on a new-style invoice
A $100.00 invoice paid in full, then $40.00 refunded by hand: the refund is Paid at once, and the invoice moves from Paid to Partially paid with $40.00 due. Refunding everything paid makes it Unpaid. A refund is only offered on a Paid or Partially paid invoice, so while a bank payment is still Processing (invoice status Processing) it can't be refunded. See Refunds.
A part-paid invoice with a bank payment clearing
$100.00 invoice, $40.00 cash recorded, and a $60.00 bank payment Processing. The invoice reads Processing. Nothing more can be recorded by hand: $100 − $40 − $60 = $0.00 left to settle.
Where it shows up
- Invoice page payment lines and Records.
- The pay link and statement page (Processing screens).
- The Activity Log (processing, paid online and failed entries).
- The sales report and the customer's balance, which count only Paid payments.
- Payment History lists every status except deleted, with no status column (see Known limitations).
Permissions
Everyone who can see the invoice sees payment statuses. Nobody can change one by hand.
Decisions
- Recompute the invoice status on every payment status change. A failed bank payment used to leave invoices on Processing indefinitely, in one real case for 72 days. (#2343)
- No messages on a failed bank payment. Kept on purpose in October 2026; QA has since recommended alerting the supplier and the customer. (#2343, open)
- Money still clearing never counts as paid, but does count against what can still be paid. (#2499)
- A bank payment is booked when it clears, not when it's submitted. A failed debit then needs no reversal. (#2568)
- A bank payment clearing shows "Processing" on its own line. (#2499)
Specs
IMM-034 in invoice-money-movements.feature covers this page. It's embedded on Bookkeeping effects. ASB-001 to ASB-006 in ach-settlement-booking.feature cover when a bank payment is booked.
Known limitations
- Nobody is told when a bank payment fails.
- Payment History has no status column, so a Processing or Failed bank payment looks like any other payment there.
- A bank payment waiting for verification stays Pending even after it's verified, until it clears. The invoice reads Processing meanwhile.
- The clearing time is described three different ways across the app.
FAQ
Why is the payment still Processing? It's a bank (ACH) payment, and banks take a few business days to clear them. It turns Paid, or Failed, by itself.
The bank payment failed. What now? The invoice is back to Unpaid. Send the invoice again so the customer gets a new pay link, or record the money by hand if they paid another way. Nothing was booked for the failed payment.
What does Pending mean on a bank payment? Stripe sent two small deposits to the customer's bank, and the customer has to confirm them before the payment can go through.
Can I mark a bank payment as received myself? No. Its status comes from Stripe. If the customer paid you another way, record that payment. You can't edit the bank payment itself.