Back to Help Center
Inbox & follow-ups·Setup3 min read

Record a refund

Refund the customer through whatever channel they paid on, then record it in Yesoma so the invoice, case status, and revenue stats stay accurate. Full refunds only in v1.

Refund a customer when something didn't work out — service cancelled, duplicate payment, dispute. Yesoma doesn't move money, so you send the refund through the channel they originally paid on first, then record it here so your invoice, case status, and revenue stats stay accurate.

1. When to use Refund vs. Mark unpaid

| You did this | Use | |---|---| | Marked something paid by accident, no money actually moved | Mark unpaid (reverts the invoice to accepted state) | | Customer paid, you've now sent the money back | Refund (records the refund + flips case to Lost) |

Refund is a terminal state. Once recorded, you can't Mark unpaid on top of it — the only way back is to manually re-create the quote.

2. Sending the refund

Yesoma doesn't process refunds — you send the money back through the same channel the customer originally paid on:

  • Africa MoMo markets — refund via MTN MoMo, Airtel Money, M-Pesa, whatever they used
  • US — Zelle, Venmo, bank transfer
  • UK — bank transfer, Revolut
  • EU — SEPA bank transfer
  • Brazil — Pix
  • Mexico — OXXO, bank transfer
  • India — UPI, bank transfer
  • Philippines — GCash, bank transfer
  • Australia / NZ — PayID, bank transfer
  • Anywhere else — your bank, the payment app they used, however the money got to you

The refund dialog in Yesoma shows examples relevant to your country so you don't have to think about it.

3. Recording in Yesoma

  1. Open /quotes and find the paid invoice.
  2. Click into the drawer — you'll see a Refund button (coral) in the footer, between Mark unpaid and Void.
  3. The confirm dialog opens with an optional Reason textarea ("customer cancelled", "service couldn't be delivered", "duplicate payment", whatever). Type if useful, leave blank if not.
  4. Click Record refund.

What happens:

  • Quote status flips to Refunded
  • The linked case moves Won → Lost automatically
  • The customer's invoice page shows a coral Refunded by your business banner with your reason (or a generic "check your payment account — funds should be on their way back" message if you left it blank)
  • The Invoices paid count + Invoiced this month stat on /quotes both subtract this invoice
  • Insights revenue rollup subtracts the amount on the refund date — the 14-day sparkline shows the refund as a dip
  • Auto-followups stop nudging this invoice

The drawer's activity feed picks up a Refund recorded event with your reason inline, slotted chronologically after Marked paid.

4. The Refunded tab

/quotes gains a Refunded filter tab once you have any refunds. Quick way to scan everything that came back out the door.

5. Limitations

  • Full refunds only in v1. If you refunded only part of an invoice (say, half), record the full refund and add a note in the activity feed explaining the partial nature. Partial-refund tracking is a future feature if owners ask for it.
  • No "undo refund" button. If you recorded one by mistake, the safest move is to add a clarifying note to the activity feed and either re-create the quote or contact us. We deliberately didn't ship undo because refunds are a serious enough action that we want to avoid silent reversals showing up in audit history.

6. Who can do this

Same gate as the rest of invoices: owner, admin, manager. Agents and viewers don't see the Refund button (or the Quotes tab itself).

More in Inbox & follow-ups

Was this article helpful?

If something was unclear or missing, tell us and we'll fix it.

Still stuck?

We'll help you get this working. Send us a message, or ask about Managed Setup.