A per-charge action distinct from cancelling the whole subscription. It sends the money back and leaves the account running. Past the window the option disappears from the UI entirely rather than sitting there as a trap.
Also called: give me my money back · goodwill refund · refund a payment · double charged
- 1Rows carry the window state; refund is only offered while it is open.
- 2Confirming is a two-part gesture — an are-you-sure plus typing 'refund'.
- 3An internal reason is recorded in the audit log and on the signup record.
- 4A separate optional processor reason is forwarded, defaulting to requested-by-customer.
- 5The fraudulent reason is never auto-forwarded because it blocklists the card — the UI has to ask explicitly.
The route separates two things that used to be one destructive action: 'Distinct from /api/platform/signups/[id]/cancel-refund, which cancels the subscription + tears the org down — this one just sends the money back (e.g. a goodwill refund inside the 72-hour window) and leaves the account running.' The fraud-reason rule is written as a hard warning: 'NEVER auto-forward "fraudulent", it blocklists the card.'
- A goodwill refund previously meant tearing down the account with it.
- An expired refund window was still clickable and then failed.
- A careless reason code could blocklist a customer's card.
See it on your own jobs
Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.
or keep browsing features →