MarketplaceEstornos

Solicite o reembolso total ou parcial de uma cobrança já paga. Estornos são analisados e aprovados pelo time de operações, que pode aprovar ou rejeitar a solicitação.


Endpoint

POST https://isolutionpay.com/api/refunds

Campos

CampoObrigatórioDescrição
payment_idID da cobrança original (txid retornado na criação)
amountValor a estornar em centavos (pode ser parcial)
reasonMotivo do estorno (max. 500 chars)

Exemplo

curl -X POST https://isolutionpay.com/api/refunds \
  -H "Content-Type: application/json" \
  -H "token: isolutionpay_sk_SUA_CHAVE_AQUI" \
  -d '{
    "payment_id": "pay_abc123",
    "amount": 5000,
    "reason": "Cliente solicitou cancelamento"
  }'
const res = await fetch("https://isolutionpay.com/api/refunds", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "token": "isolutionpay_sk_SUA_CHAVE_AQUI"
  },
  body: JSON.stringify({
    payment_id: "pay_abc123",
    amount: 5000,
    reason: "Cliente solicitou cancelamento"
  })
});
 
const { id, status } = await res.json();

Resposta

{
  "id": "ref_xyz456",
  "payment_id": "pay_abc123",
  "amount": 5000,
  "status": "pending",
  "created_at": "2025-01-15T10:30:00Z"
}
CampoDescrição
idID do estorno — use para acompanhar o status
statuspendingapproved ou rejected
amountValor solicitado em centavos

Status do estorno

StatusSignificado
pendingAguardando análise da equipe de operações
approvedReembolso aprovado e processado
rejectedSolicitação negada (motivo enviado via webhook)

Listar estornos

GET https://isolutionpay.com/api/refunds

Retorna todos os estornos da sua conta, ordenados do mais recente para o mais antigo.

curl https://isolutionpay.com/api/refunds \
  -H "token: isolutionpay_sk_SUA_CHAVE_AQUI"

Webhooks

Configure a URL de webhook no painel para receber notificações automáticas quando o status mudar:

{
  "event": "refund.approved",
  "refund": {
    "id": "ref_xyz456",
    "charge_id": "pay_abc123",
    "amount": 5000,
    "status": "approved"
  },
  "timestamp": "2025-01-15T12:00:00Z"
}
EventoQuando ocorre
refund.approvedEstorno aprovado pela equipe de operações
refund.rejectedEstorno rejeitado (inclui notes na resposta)

Códigos de erro comuns

HTTPMensagemCausa
404Pagamento não encontradopayment_id inválido ou de outra conta
409Valor maior que o disponívelTentativa de estornar mais do que foi cobrado
422Pagamento não elegívelPagamento ainda pendente ou já estornado