Skip to main content
POST
Use POST /payment/{id}/refund to return funds to a cardholder after a payment has been captured and settled. You can issue a single full refund or multiple partial refunds — as long as the cumulative refunded amount doesn’t exceed the originally captured total. Refunds typically appear on the cardholder’s statement within 5–10 business days, depending on their bank.

Identifying the payment

{id} is the Therius payment id returned by POST /payment/authorization and POST /payment/purchase. orderCode and paymentCode are your own reference fields and are not accepted here. An unknown or non-owned id returns 404.

Examples

Full refund

Partial refund

Refunding only part of an order — for example, a single returned item from a multi-item purchase:
You cannot refund a payment that is in the authorized (not yet captured) state. To release an authorization that hasn’t been captured, use Cancel instead. Attempting to refund an uncaptured payment returns an error.
Multiple partial refunds are allowed. You can call this endpoint several times against the same payment id, provided the cumulative refund amount doesn’t exceed the original captured amount. Each call should use a distinct Idempotency-Key.
If you’re unsure whether a payment is in authorized or captured state, use Cancel or Refund instead — it detects the state automatically and takes the appropriate action.

Authorizations

Authorization
string
header
required

Your secret API key: Bearer prv_production_xxx (production) or Bearer prv_sandbox_xxx (sandbox).

Headers

Idempotency-Key
string<uuid>

A UUID you generate per operation. Required in production. Retrying with the same key returns the original response.

Path Parameters

id
string<uuid>
required

The Therius payment id returned by POST /payment/authorization or POST /payment/purchase.

Body

application/json
merchantCode
string
required

Your merchant account identifier. Validated against the Bearer key's merchant; required if the key maps to more than one merchant account.

amount
object
required
reference
string

Optional internal reference for this refund operation.

Response

200 - application/json

Refund result

Result of a capture, refund, cancel or cancel_or_refund.

id
string

The Therius payment id.

merchantCode
string
orderCode
string
paymentCode
string

Therius receipt ID.

amount
object
status
enum<string>

Outcome of the operation.

Available options:
captured,
refunded,
cancelled,
failed