Credit notes and refunds
Summary
Section titled “Summary”A credit note records that you owe the customer money back against an invoice — a return, an overcharge, a goodwill gesture, or a warranty fix. You can issue a partial credit (some lines, some quantities) or a full credit (every line at full quantity). For Stripe-paid invoices, issuing a credit note can also trigger a Stripe refund automatically.
Credit notes do not cancel the invoice. The invoice stays as it was, and the credit note records the offset. To cancel an invoice that has no payments, see Voiding an invoice.
Prerequisites
Section titled “Prerequisites”- The
finance.credit_notes.createpermission to issue credit notes. Owner and Manager have this by default. - The invoice you want to credit must already exist.
- For a Stripe refund, the invoice must have at least one Stripe payment recorded.
Issue a credit note
Section titled “Issue a credit note”- Open the invoice you want to credit.
- Click Issue Credit Note.
- The credit-note form opens at
/finance/sales/{invoiceId}/credit-note. - Pick the lines and quantities to credit:
- Tick each line you want to include.
- Adjust the quantity if you are crediting some but not all (e.g. 2 of 4 tyres returned). The unit price is read-only.
- The line total updates live.
- Click Select All to credit every line at original quantity (a full credit).
- Pick a Reason:
- Return — customer returned the part.
- Overcharge — invoice was wrong.
- Damaged — part arrived damaged.
- Warranty — covered by warranty, customer should not have been billed.
- Goodwill — discretionary gesture.
- Other — requires a free-text detail.
- Pick a Refund method:
- Stripe (only available if the invoice was paid through Stripe). Refunds the customer’s card.
- Manual — records the credit; you handle the refund externally (cash from drawer, bank transfer, customer collects later).
- Credit-to-Account — placeholder for a future feature; currently disabled.
- Optionally add notes.
- Review the totals (Net / VAT / Gross) at the bottom.
- Click Issue Credit Note.
- The confirmation dialog states: “This will refund {amount} to the customer’s card. This action cannot be undone.” Confirm.
If you chose Stripe, the refund is sent to the customer’s card immediately. Stripe typically posts the refund to the customer’s bank account within 5-10 working days.
If you chose Manual, the credit note is recorded. You are responsible for moving the money yourself. The sales invoice keeps its status, but what the customer owes takes the credit into account. See “How a credit note changes what is owed” below.
How a credit note changes what is owed
Section titled “How a credit note changes what is owed”The invoice page, the customer record, statements, payment links and the card terminal all work out what an invoice owes the same way: the total, less credit notes, less what was paid, plus what was refunded to the customer’s card. Some other screens have not moved to this yet. The invoice list, the Record Payment dialog, the invoice PDF, the customer portal and the aged debtors report do not yet take every credit into account.
- A Stripe credit note is money sent back to the card. It shows as Refunded. On a part-paid invoice the customer still owes the rest of the bill. For example, a £320.00 invoice with £100.00 paid by card and a £35.60 card refund still owes £220.00.
- A manual credit note on an unpaid or part-paid invoice reduces the bill. A £320.00 unpaid invoice with a £35.60 goodwill credit owes £284.40.
- A manual credit note on an invoice already paid in full is treated as money handed back to the customer. The invoice shows nothing owed and no credit. Its paid figure reads Paid (net), the payment less the credit.
- A manual credit note on a part-paid invoice that would take it into credit is split. The part that reduces the bill to what was paid reduces the bill. The rest is treated as money handed back.
Torqueflow cannot tell from a manual credit note whether money actually changed hands. If you refunded a part-paid invoice on the card terminal, by bank transfer or in cash, record a manual credit note. It reads as a bill reduction, so the invoice shows less owed than is really owed.
Void a credit note
Section titled “Void a credit note”- Open the credit note from the originating invoice’s detail page (credit notes are listed beneath the invoice).
- Click Void.
- The dialog requires a reason in free text.
- If the credit note had a Stripe refund, a warning appears: “Voiding will adjust the books but will NOT reverse the refund.” This is correct — the customer has already received the money on their card. Voiding the credit note removes its accounting effect, but Stripe refunds cannot be undone.
- Confirm.
The credit note’s status flips to Voided and is excluded from outstanding-balance calculations.
Expected Outcome
Section titled “Expected Outcome”- A credit note row appears under the originating invoice.
- What the customer owes reflects the credit on the invoice page, the customer record and statements.
- For Stripe credits, the customer’s card is refunded automatically.
- The credit note has its own number (e.g.
CN-00001) and can be viewed, downloaded, or voided.
- Credit notes do not change the originating invoice’s payment status or its recorded paid amount. The credit note offsets them in every outstanding figure.
- You cannot credit more of a line than was originally invoiced. If you have already credited 2 of 4 tyres, only 2 are creditable on a future credit note for the same line.
- Credit-note PDFs are generated automatically with a similar look to the invoice PDF, plus the credit note number and a “Credit note” header.
- If the original Stripe payment was split across multiple Stripe charges (rare), the refund spans multiple charges in sequence. Partial-failure scenarios surface in the response — re-attempt or contact support.
- Voiding a credit note is a bookkeeping correction. It does not push back to Stripe.
When to use credit note vs void
Section titled “When to use credit note vs void”| Situation | Use |
|---|---|
| Invoice was created in error, customer never paid | Void the invoice |
| Customer paid and you owe some or all of it back | Credit note with Stripe or Manual refund |
| Customer overpaid; you want to keep it as credit rather than refund | Nothing. The overpayment already shows as a credit on the invoice. A manual credit note on a paid invoice is read as money handed back, so it would not add to the credit (Credit-to-Account is coming) |
| Customer returned a part months later | Credit note (Return reason) |
| Wrong line item priced; customer hasn’t paid yet | Edit the invoice (if no payments) or issue a partial credit note |
Troubleshooting
Section titled “Troubleshooting”Problem: Stripe is not available as a refund method. Cause: The invoice was not paid via Stripe (or has no payments at all). Fix: Use Manual and refund the customer through your own bank or card terminal. If the invoice was paid in cash or by bank transfer, refund the same way and record it as a Manual credit note.
Problem: The form says “X already credited, Y remaining” and won’t let me enter a higher quantity. Cause: You are trying to credit more than the original line. Previous credit notes have already used some of the line quantity. Fix: Reduce the quantity to the remaining amount, or check the existing credit notes for that line.
Problem: Customer says they have not received the Stripe refund. Cause: Stripe refunds typically post 5-10 working days after issue. Fix: Check the credit note record — it has the Stripe refund ID. If more than 10 working days have passed, the customer should contact their card issuer first. You can also check the Stripe dashboard.
Problem: I voided a credit note, but the customer’s card still shows the refund. Cause: Voiding a credit note is bookkeeping only. It does not reverse a Stripe refund. Fix: This is by design — Stripe will not allow refunds to be reversed. If a credit note was issued in error and the refund landed, you may need to ask the customer to pay again (a fresh invoice) or treat it as a goodwill gesture.
Permissions
Section titled “Permissions”finance.credit_notes.createto issue credit notes.finance.credit_notes.viewto see credit notes.