Skip to main content
POST
Create refunds

Authorizations

Authorization
string
header
required

API key from Developers → API Keys, sent as Authorization: Bearer .

Headers

Idempotency-Key
string

Any unique string (≤255 chars). A retry with the same key within 24 hours replays the original response (Idempotent-Replayed: true) instead of creating a second record.

Maximum string length: 255

Body

application/json
payment_id
integer
required

The payment being refunded. Required on create. A payment taken through a provider (Stripe, GoCardless, a card on file) is refused with provider_refund_not_supported — refund those in PracticeHub.

Required range: x >= 1
amount
string
required

On create: how much to hand back, 2 dp, from 0.01 up to what is left of the payment after earlier refunds. On read: the ledger amount, which is negative.

Pattern: ^-?\d+(\.\d{1,2})?$
Example:

"45.00"

metadata
object

Integrator-owned key/value metadata (max 50 keys). Values are strings (≤500 chars), numbers or booleans and read back with the type they were written with. On write, a null value removes the key. Filter with metadata[key]=op:value; number operands compare numerically.

Response

The resource

data
object
Example: