Reembolsos
Solicitar Reembolso
POST
/v1/wallet/refundsBase URL Produção:
https://api.validapay.com.brBase URL Sandbox:
https://sandbox.validapay.com.brAutenticação
bearerAuthorizationstring · header · obrigatório
Envie no header:
Authorization: Bearer {{token}}Inicia o processo de reembolso de uma cobrança já paga, devolvendo o valor ao meio de pagamento original.
Solicitar reembolso
Incia o processo de devolução de um pagamento já confirmado. O valor é debitado do seu saldo disponível e devolvido ao cliente pelo mesmo meio de pagamento (PIX ou cartão). Para PIX, informe o endToEndId; para cartão, o chargeId.
| Campo | Obrig. | Tipo | Descrição |
|---|---|---|---|
endToEndId | ✅* | string | ID E2E do PIX a ser estornado |
chargeId | ✅* | string | ID da cobrança a ser estornada |
amount | ✅ | number | Valor a reembolsar em reais (pode ser parcial) |
reason | ✅ | string | Motivo: BANK_ERROR FRAUD CUSTOMER_REQUEST PIX_CHANGE_ERROR |
accountId | ❌ | string | M2M: conta específica |
*Pelo menos um dos campos marcados com ✅* é obrigatório.
Body
application/json
Content-Type:application/json
{
"endToEndId": "E00000000202401150000000000000001",
"amount": 100.0,
"reason": "CUSTOMER_REQUEST",
"chargeId": "cha_xxx",
"accountId": null
}Schema
| Field | Type | Required | Description |
|---|---|---|---|
endToEndId | string | - | - |
amount | number | - | - |
reason | string | - | - |
chargeId | string | - | - |
accountId | object | - | - |
Headers
| Name | Type | Value | Required |
|---|---|---|---|
| Content-Type | - | application/json | Optional |
const url = 'https://sandbox.validapay.com.br/v1/wallet/refunds';
const options = {
method: 'POST',
headers: {
'Authorization': 'Bearer {{token}}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"endToEndId": "E00000000202401150000000000000001",
"amount": 100.0,
"reason": "CUSTOMER_REQUEST",
"chargeId": "cha_xxx",
"accountId": null
})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));Response Examples
201201
{
"refundId": "ref_xxx",
"status": "PROCESSING",
"amount": 100.0,
"reason": "MD06"
}400400 excedido
{
"code": "REFUND_AMOUNT_EXCEEDED"
}400400 saldo
{
"code": "INSUFFICIENT_BALANCE"
}