Skip to main content
POST
billing.refund.create

Authorizations

Authorization
string
header
required

API key: sk_live_…

Headers

Idempotency-Key
string
required

Required: this capability has an external effect.

Maximum string length: 255
Pramaan-Account
string

Optional. One of your account ids (GET /v1/accounts): run on that account, whatever your routing rules say. The response header X-Pramaan-Account names the account that ran.

Pramaan-End-User
string

Optional. Your own tag for your end user: a sticky: end_user rule keeps them on the account that first served them.

Maximum string length: 256
Pramaan-End-User-Group
string

Optional. Your end user's group, matched by rules with endUserGroup.

Maximum string length: 64

Body

application/json
transactionId
string

The charge to refund, as returned by billing.transactions.list. Send this or ref, not both.

Required string length: 1 - 128
Pattern: ^[A-Za-z0-9_-]+$
ref
string

A captured payment's reference from payments.payment-link.get, payments.checkout.get or a billing.transactions.list row, in place of transactionId.

Pattern: ^(ref_[0-9A-HJKMNP-TV-Z]{26}|rh_[A-Za-z0-9_-]{24,1024})$
amount
object

Part of the charge to refund. Omit for a full refund. Must use the charge's currency and not exceed its total; partial refunds work for single-item charges only.

reason
string

Why, up to 1000 characters.

Required string length: 1 - 1000

Response

The result

status
enum<string>
required

"pending" until the refund is approved and sent; never "succeeded" early.

Available options:
pending,
succeeded,
failed,
unknown
amount
object

The amount refunded, when known.

createdAt
string

When the refund was created, ISO 8601.