POST/api/v1/refunds

Issue a refund

Issues a refund against an order. Calls Paystack /refund under the hood. Supports the `Idempotency-Key` header — retrying with the same key inside 24h returns the cached response.

Authorization

Requires the refunds:write scope. See the auth guide for how to mint a token with the right scopes.

Parameters

Body parameters

FieldTypeDescription
orderId
required
stringOrder CUID to refund against.
e.g. cl9j4k2l3000001jx8h2zfb1m
amountKobo
required
numberAmount to refund, in kobo. Cannot exceed remaining refundable.
e.g. 4500000
reason
required
stringRefund reason — one of "wrong_item", "damaged", "size_issue", "late", "customer_request", "fraud", "duplicate", "other".
e.g. damaged
reasonNote
optional
stringFree-form note shown on the refund detail.
e.g. Item arrived torn
restockItems
optional
booleanWhether to return stock to variants. Default true.
e.g. true

Headers

FieldTypeDescription
Idempotency-Key
optional
stringClient-supplied retry key. Same value in 24h = same response.
e.g. refund_idem_2025_11_20_001

Response

A successful call returns 200 OK with the body shown to the right. Errors follow the standard envelope.