---
title: "Create Refund"
method: POST
path: "/v1/accounts/{account_id}/refunds"
---

# Create Refund

`POST /v1/accounts/{account_id}/refunds`

## Request

- Base URL: `https://api.textforagents.com`
- URL: `https://api.textforagents.com/v1/accounts/{account_id}/refunds`
- Auth: none declared

Issue a refund under the source-rail rule (see
app/refunds.py): card-paid credit returns only to the
original payment method via Stripe; USDC-funded credit
returns only in USDC to the registered wallet / original
funding address. Over-cap and exceptional USDC refunds
escalate with a prepared summary — never silently fail.

## Path parameters

- `account_id` string, required

## Headers

- `authorization` string, nullable

## Request body

- RefundBody
  - `amount_cents` integer, required
  - `idempotency_key` string, nullable
  - `rail` string

## Response `201`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/textforagents/apis/textforagents-api.md) · [All operations](https://skmtc.dev/textforagents/apis/textforagents-api/llms.txt) · [OpenAPI document](https://skmtc.dev/textforagents/apis/textforagents-api/revisions/9306ab0e457b?raw)
