Mobile Service
Sync.
Help

Issue a Refund

Sometimes you need to return money to a customer — wrong service, defective part, billing error, or simple goodwill. Mobile Service Sync handles refunds at the payment level: you mark a payment refunded, and the invoice's amount-paid drops by the refund amount.

This article covers the operator-side refund flow inside the CRM. Subscription billing refunds (if you're refunding a Mobile Service Sync charge to one of your tenants) are handled separately from /admin.


Full vs. partial refund

You can refund the entire payment or just part of it.

  • Full refund — common for jobs that got canceled after billing or services that were unusable. The whole payment goes back; the invoice flips back to open if no other payments cover it.
  • Partial refund — common for "we'll knock 20% off because the job took longer than promised." The invoice stays paid (or open) depending on whether the remaining amount paid still covers it.
⚠️

A refund is a separate accounting event — it doesn't delete the original payment. Both the payment and the refund stay on the invoice for the audit trail. If you only want to delete a payment recorded in error, use Delete payment instead (only available on payments recorded in the last 24 hours).


Issue a refund

Open the invoice

From Invoices in the sidebar, click the invoice that has the payment you want to refund. Or jump to it from the customer's profile → Invoices.

Find the payment row

Scroll to the Payments section. Each successful payment shows the amount, method, and date received.

Click "Refund"

Enter the amount to refund (defaults to the full payment), pick a reason, and optionally add a note. The reason categories match your accounting export — pick the closest match:

  • Service issue — the job had a problem (wrong part, damage, customer dissatisfaction).
  • Billing error — wrong amount charged or wrong service line item.
  • Duplicate charge — same job charged twice.
  • Goodwill — making it right with the customer beyond a strict service issue.
  • Other — last resort; surfaces a free-text required field on the export.

Save

A refund record gets created on the invoice. The invoice's amountPaidCents drops by the refund amount, and if the new total no longer covers the invoice, status flips back to open.


What happens to QuickBooks

If QuickBooks Online is connected, the refund pushes through automatically:

  • Invoice payments that were originally pushed as Sales Receipts (typical for paid-at-door jobs) get a matching Refund Receipt in QBO.
  • Payments pushed as standalone Payment records (typical for fleet net-30) get a Refund linked to the same customer.

If the QBO push fails (token expired, customer not synced), you'll see an error toast. The local refund record stays — you can retry the push from the invoice's QuickBooks card.


Refund methods that don't apply

Mobile Service Sync does not push the refund to the original payment processor. If the customer paid by card and you marked it paid in the app, refunding here:

  • ✓ Records the refund in your own books.
  • ✓ Updates the invoice and customer A/R.
  • ✓ Pushes a refund receipt to QuickBooks.
  • ✗ Does not automatically credit the customer's card via Stripe / Square / Authorize.

You still have to issue the actual money-movement refund in your payment processor's dashboard. We recommend doing the processor refund first, then recording it here so the books match what actually happened.


Refund-related searches

Pull a list of refunds with the ReportingRefund history view. You can filter by date range, reason, and refunder (which user processed it). Useful for monthly bookkeeping reviews and tax prep.


Related

Was this article helpful?