Open a refund request
Asks for an order to be refunded. The request starts in pending and is decided by Bitcall; it does not move money by itself.
Authorization
KeyId ApiSecret Your API key id.
In: header
Your API key secret.
In: header
Header Parameters
Required. Repeating this operation with the same key and the same request replays the original response for 24 hours; a different request with the same key returns 409 IDEMPOTENCY_CONFLICT.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/otp/refund-requests" \ -H "Idempotency-Key: string" \ -H "Content-Type: application/json" \ -d '{ "orderId": "ord_4bU09XIfH3288i45YgDtYhG__8iunOjWazOpXG7lzg", "reason": "NO_DELIVERY", "email": "you@example.com", "notes": "No code arrived within the rental window." }'{
"data": {
"refundRequestId": "string",
"status": "pending",
"amount": {
"amount": 0,
"currency": "string"
},
"reason": "string",
"notes": "string",
"createdAt": "string",
"updatedAt": "string"
}
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "The request is not valid. See `fields` for what to correct.",
"requestId": "9f1c7b2e-…"
}
}{
"error": {
"code": "AUTHENTICATION_REQUIRED",
"message": "This endpoint requires an API key.",
"requestId": "9f1c7b2e-…"
}
}{
"error": {
"code": "NOT_FOUND",
"message": "No such resource.",
"requestId": "9f1c7b2e-…"
}
}{
"error": {
"code": "CONFLICT",
"message": "The resource is not in a state that allows this operation.",
"requestId": "9f1c7b2e-…"
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Too many requests. Retry after the interval in `Retry-After`.",
"requestId": "9f1c7b2e-…"
}
}{
"error": {
"code": "INTERNAL_ERROR",
"message": "Something went wrong on our side.",
"requestId": "9f1c7b2e-…"
}
}{
"error": {
"code": "SERVICE_RESPONSE_INVALID",
"message": "The upstream service returned an unexpected response.",
"requestId": "9f1c7b2e-…"
}
}{
"error": {
"code": "SERVICE_UNAVAILABLE",
"message": "The service is temporarily unavailable. Try again shortly.",
"requestId": "9f1c7b2e-…"
}
}List refund requests GET
Returns your refund requests and their current decision state.
Withdraw a refund request POST
Withdraws a refund request that is still pending. Repeating the call returns the already-cancelled request. This operation is safe to repeat: repeating it returns the existing state and performs no further action.