Free guide · JWillum products
Does Stripe refund the fee when I refund a customer, and how do I record it?
When you refund a Stripe charge, the original processing fee is generally not returned. Here is how to book the refund and the kept fee in your books.
Published
Short answer: for standard card payments, Stripe generally does not return the original processing fee when you refund a charge (check Stripe's current refund documentation for your account and payment method). So the customer gets the full amount back, and the fee you paid on the original sale stays as an expense. Book the refund as Dr Refunds (or Sales returns) / Cr Stripe Clearing for the refunded amount, and leave the original fee entry as it is.
Why it looks confusing
The refund row in the Stripe export usually shows a fee of zero, while the original charge row still shows its fee. If you only look at the payout, you see less money than "sale minus refund" and it can look like Stripe charged you extra. It did not; it kept the fee from the original charge.
Worked example (illustrative numbers only)
Example: a customer pays 50.00, the fee is 1.75 (made-up number), and you later refund the full 50.00.
| Event | Journal | Effect on clearing |
|---|---|---|
| Original charge | Dr Clearing 50.00 / Cr Sales 50.00 | +50.00 |
| Fee on charge | Dr Stripe Fees 1.75 / Cr Clearing 1.75 | −1.75 |
| Full refund | Dr Refunds 50.00 / Cr Clearing 50.00 | −50.00 |
| Net | −1.75 |
Net result: sales and refunds cancel out, and you have a 1.75 fee expense. Stripe takes the 1.75 from your balance, so a later payout is 1.75 lower. If your Stripe balance is too low to cover a refund, Stripe may debit your bank account instead.
Booking tips
- Pick one policy for refunds: a contra-income account (Sales returns) or an expense account. Use it every month.
- Refunds often land in a later payout than the sale. Book them on the refund date, not the original sale date.
- Treat disputes like refunds, but note them separately; disputes can carry their own fee.
Related: why your Stripe payout doesn't match the bank deposit and how to record Stripe fees in a QuickBooks journal entry.
Doing it faster: StripeClear Journal
StripeClear Journal is a single offline HTML file ($8 one-time). Drop in your Stripe balance transactions CSV and it builds one balanced QuickBooks Online journal per day, with a payout summary and an audit file. It runs in your browser; nothing is uploaded. It is a reconciliation helper, not accounting advice. Want to look at your data first? Try the free Stripe Payout Check.
Related guides
FAQ
Does Stripe give back the fee on a refund?
For standard card payments, Stripe generally keeps the original processing fee when you refund. Check Stripe's refund documentation for the current rules for your payment methods.
Do I reverse the fee entry when I refund?
No. The fee was really paid and is not returned, so it stays as an expense. You only book the refunded amount.
What about partial refunds?
Book the refunded amount only, for example Dr Refunds 20.00 / Cr Clearing 20.00. The original fee entry stays as it is.
Where do refunds show up in the Stripe export?
As separate rows with a refund type or reporting category, usually with a negative amount, in the payout where they were deducted.
Check your own export for free
Drop a Stripe balance CSV into the free Stripe Payout Check to see per-category totals and whether every row ties out (gross − fee = net). It runs in your browser and nothing is uploaded.