Charge an invoice
With a card on file, the supplier charges an invoice's whole balance due from its Manage Payments panel in two clicks: Charge $X, check the breakdown, Charge. The money is taken while they wait, the invoice reads Paid, and an Online payment appears in its records.
Who uses it
- Supplier staff with full invoice access charge the card.
- Restaurants are charged. They don't approve each charge; their saved card's consent covers it.
How it works
The Card on file box
Open the invoice, click Manage Payments (shown for invoices that are Ready for Delivery or Delivered). The Card on file box sits at the top of the panel, above the tabs, with a Refresh icon beside its title.
With a card on file it shows:
- "{Brand} ending in {last 4} · Expires {MM/YY}", for example "Visa ending in 4242 · Expires 06/27".
- Charge {total} (filled button), for example Charge $257.55. The total already includes the card fee. The button is hidden when:
- nothing is owed (balance due is $0.00),
- the confirm step is open,
- the last charge since the panel was opened failed in a way only a different card fixes, or took money the invoice couldn't record (see Failed charges). Closing and reopening Manage Payments, or reloading, brings it back.
With a card on file the box shows nothing else: no Request card on file and no Enter card yourself (see Replacing a card).
The confirm step
Clicking Charge $X opens the breakdown in place:
| Line | Shows |
|---|---|
| Balance Due | What the invoice still owes |
| Card fee | The fee added for the restaurant, or You cover it when the supplier absorbs it |
| Total charged | Balance due + card fee: what the card is charged |
| Platform fee (deducted from payout) | Clipp's fee, taken from the supplier's Stripe payout, not from the restaurant. $0.00 when the supplier has no revenue share. |
Then Cancel and Charge. While charging, Charge reads Charging... and Cancel is disabled. Every amount is explained in Card fee & platform fee.
The charge
- Clipp re-reads what's owed at the moment of the charge. If the total no longer matches the one on screen, nothing is charged (see Amount changed).
- It checks the invoice can take the payment: not cancelled, not a draft, and the supplier's books can record it.
- It charges the card through the supplier's Stripe account. The charge is described in Stripe as "Invoice {invoice number}".
- It records the payment straight away.
- The box shows Card charged. (green). The balance drops to $0.00, so the Charge button disappears.
Only one charge can run on an invoice at a time. A double-click, a second tab or a colleague charging the same invoice gets A charge is already in progress, and the restaurant is charged once.
What changes after a charge
Example: invoice NEW-001428 from Smoove Ice Cream to Corner Bistro is $250.00, Delivered, unpaid. The restaurant pays the card fee. Smoove has a 1% platform revenue share. A Clerk charges $257.55.
On the invoice
| Thing | Before | After |
|---|---|---|
| Payment status | Unpaid | Paid |
| Balance due | $250.00 | $0.00 |
| Records tab | — | One payment: Payment Amount $250.00 · Method Online · Recorded by {the Clerk's name} |
| Payment Method on the invoice | — | Online $250.00 |
| Card on file box | Charge $257.55 | "Card charged." and no Charge button |
| Card fee on the invoice and PDF | — | Not shown (see Known limitations) |
| Restaurant's app, order page | — | Processing Fee +$7.55 under the order total |
The payment can't be edited or deleted from the records list: only hand-recorded methods can. To give money back, see Payments & refunds.
In the supplier's books
Booked at the moment of the charge, dated the charge date, into the default financial account for online payments:
| Entry | Type | Category | Amount | Description |
|---|---|---|---|---|
| Order Payment Received | Income | Online Payment | $250.00 | A payment was received from Corner Bistro for order NEW-001428 |
The $7.55 card fee the restaurant paid is not income. Shortly after, once Stripe reports its actual fee, Clipp books the part of the processing fee the supplier bears as an expense. For this example that's $2.72 ("Order Transaction Processing Fees"). The full working is in Card fee & platform fee.
If the invoice carries a one-time order fee, the payment splits the same way any payment does: the fee part first. Say NEW-001428's $250.00 includes a $10.00 order fee:
| Entry | Type | Category | Amount |
|---|---|---|---|
| Order Fee Payment Received | Income | Other Income – Order Fees | $10.00 |
| Order Payment Received | Income | Online Payment | $240.00 |
Everywhere else
| Thing | Effect |
|---|---|
| Amount the restaurant owes (AR) | Down by $250.00. The invoice drops out of outstanding and overdue lists. |
| Store credit | No change. Card on file never issues or spends store credit. |
| Stock | No change. |
| Supplier's Stripe account | A $257.55 card payment, description "Invoice NEW-001428". Payout after Stripe's and Clipp's fees (worked out here). |
| Restaurant's card statement | One $257.55 charge from the supplier's Stripe account (verify the statement descriptor). |
| Emails, SMS, push | Usually none. See Messages. |
| Reports | Counted as an online payment received, the same as a pay-link card payment (verify per report). |
Messages
The card-on-file charge itself sends no receipt. Stripe also confirms every card payment to Clipp a few seconds later, and that confirmation is matched to the same payment, so no second payment is created.
Which of the two records the payment first decides whether a receipt goes out:
| Recorded first by | Restaurant | Supplier |
|---|---|---|
| The charge (the usual case) | Nothing | Nothing |
| Stripe's confirmation | Payment receipt email, SMS and "thank you" push (as for any online payment) | "Payment Received" push |
This depends on timing rather than on a decision; see Known limitations.
Rules and edge cases
| Situation | What happens |
|---|---|
| Nothing owed ($0.00) | No Charge button. If it's charged from a stale screen: "Nothing is owed on this invoice any more." Nothing charged. |
| Partly paid: $250.00 invoice, $100.00 cash recorded | Balance due $150.00, card fee $4.65, Charge $154.65. The invoice goes Partial → Paid. |
| Store credit applied: $250.00 invoice, $50.00 credit applied | Balance due $200.00. Store credit counts as paid, so only $200.00 + fee is charged. |
| A bank (ACH) payment is still Processing | Not taken into account. Balance due still shows the full amount, so charging the card collects the invoice twice. Check the records first. See Known limitations. |
| Restaurant has a pay page open at the same time | Both can go through. Card on file doesn't hold the pay page off (verify). |
| Invoice cancelled | The panel is read-only and the box is hidden. A charge sent anyway: "This invoice is cancelled or a draft, so it can’t be charged." Nothing charged. |
| Draft (saved, not placed) | No Manage Payments button. Server refuses as above. |
| Pending or Packing, not yet Ready for Delivery | No Manage Payments button, so it can't be charged from the app. |
| Invoice cancelled in the instant between the check and the record | The card is charged but the invoice can't record it: charged but not recorded. |
| Supplier's books missing the "Online Payment" or "Order Fees" category, or the invoice has no customer name | Refused before charging: "This invoice is cancelled or a draft, so it can’t be charged." (the banner's wording, though the reason differs). Nothing charged. |
| Inactive customer | Card on file doesn't check it. Charging works as normal (verify against product intent). |
| Balance of $0.18 or less (or under $0.50 when the supplier covers the fee) | The total is below Stripe's $0.50 minimum: $0.18 + $0.31 fee = $0.49, while $0.19 + $0.31 = $0.50 goes through. Stripe refuses; its error shows in a red box. Nothing charged (verify Stripe's wording). |
Decisions
- Charge the whole balance, never a typed amount. The supplier confirms a total and the charge is refused if it moved. (#2397)
- Re-check the total at the moment of charging. A payment recorded in another tab can't be collected twice by a stale screen. (#2397)
- Record the payment at once, without waiting for Stripe's confirmation. The invoice reads Paid immediately; the confirmation is matched to the same payment, in either order. (#2397)
- One charge at a time per invoice. Prevents double charges from double clicks and second tabs. (#2397)
- Label the Stripe charge "Invoice {number}". So a supplier can match it in their Stripe dashboard. (#2404)
Known limitations
- A processing bank payment isn't subtracted from what card on file charges, so the invoice can be collected twice.
- No receipt in the usual case, and a receipt when Stripe's confirmation wins the race. The restaurant isn't reliably told their card was charged.
- The card fee isn't shown to the supplier on the invoice page or PDF, though the payment stores it. The restaurant's app does show it, as Processing Fee.
- No partial charges. To collect part of an invoice, use a pay link or record a payment.
- No automatic charging. Nothing charges the card on the due date; a person clicks Charge every time.
FAQ
Why is the Charge button more than the balance? It includes the card fee the restaurant pays: 2.9% of the balance plus $0.30. See Card fee.
I don't see a Charge button. Either nothing is owed, the confirm step is already open, or the last charge failed in a way only a new card fixes. After a decline, close and reopen Manage Payments (or reload) to see it again, or ask for a new card.
Did the restaurant get a receipt? Usually not. See Messages.
Why does the record say "Paid online by customer" instead of my name? When Stripe's confirmation reaches Clipp before the charge finishes recording, the payment is recorded without a person attached. It's the same charge.
Can I charge just part of the invoice? No. Card on file always charges the full balance due.