CheckoutRefund

List Refunds

GET
/openapi/v1/payment-intents/{paymentIntentId}/refunds

Lists the refunds of the specified Payment Intent with pagination.

Authorization

bearerAuth
headerAuthorizationBearer <token>

The access_token obtained from POST /oauth2/token. Header format: Authorization: Bearer {accessToken}.

Path Parameters

paymentIntentId*string

Payment Intent ID, such as pi_MNOL0POUV8IDPXCD

Query Parameters

pageNum?integer

Page number, starting from 1. Defaults to 1

Range1 <= value
Default1
pageSize?integer

Number of records per page. Defaults to 10. Maximum 1000

Range1 <= value <= 1000
Default10
status?string

Filters by refund status. For values, see Refund statuses

Value in"PENDING_APPROVAL""PROCESSING""COMPLETED""FAILED"
createdAfter?string

Start of the creation time range (inclusive), in ISO 8601 with a time zone offset

createdBefore?string

End of the creation time range (inclusive), in ISO 8601 with a time zone offset

Response Body

Uses the same pagination structure as the Payment Intent list. Each object in records[] is a Refund object.

application/json
  1. response
code?integer

Business status code

message?string
traceId?string

Request trace ID. Provide it when you contact technical support

data?
Example Request
curl -X GET 'https://api.test.stabofx.com/openapi/v1/payment-intents/string/refunds'
Example Response
{  "code": 200,  "message": "OK",  "traceId": "6a018b61edce0fed70c0e9464c51b86e",  "data": {    "records": [      {        "refundId": "re_IFWNVQP0O6EHB6KV",        "paymentIntentId": "pi_TZA3DEDJUNZLTUJ2",        "amount": "10.00",        "currency": "USD",        "status": "COMPLETED",        "reason": "REQUESTED_BY_CUSTOMER",        "notes": "Customer requested a partial refund.",        "metadata": {},        "createdAt": "2026-05-11T17:18:41+08:00",        "completedAt": "2026-05-11T18:02:10+08:00"      }    ],    "total": 1,    "size": 10,    "current": 1,    "pages": 1  }}