Webhook CashOut (Saques)
Receba notificações automáticas sobre o status das solicitações de saque.
🔗 Endpoint & Autenticação
POSTDefinida pelo cliente na rota /api/SendWebhook
Exemplo: https://meusite.com.br/api/webhook/wolfcash
Headers Obrigatórios
Content-Type: application/jsonX-Idempotency-Key: <uuid>⚙️ Estrutura do Evento
🟣 Exemplo real de Webhook Cashout
{
"object": "withdraw",
"type": "cashout",
"status": "successful",
"companyId": 1,
"withdrawId": 7184,
"value": 10,
"valueInCents": 1000,
"currency": "BRL",
"provider": "A55",
"providerStatus": 1,
"providerTid": "wld-00007184",
"providerPaymentId": "uuid-provider",
"endToEndId": "Exxxxxxxx",
"providerAmount": 10,
"providerConfirmedAt": "2025-11-27T10:12:33Z",
"providerDebitedAt": null,
"pixKey": "chave",
"pixKeyType": "CPF",
"creditorDocument": "xxx",
"payer": {
"name": "NOME DO BANCO/A55",
"document": "xxx",
"ispb": "xxxxx",
"agency": "xxxx",
"account": "xxxx"
},
"receiver": {
"name": "NOME DO CLIENTE",
"document": "xxx",
"ispb": "xxxx",
"agency": "xxxx",
"account": "xxxx"
},
"createdAt": "2025-11-27T00:00:00Z",
"updatedAt": "2025-11-27T00:00:00Z",
"processedAt": "2025-11-27T00:00:00Z",
"metadata": null
}🔍 Descrição dos Campos
objectSempre 'withdraw'
typeTipo do evento — sempre 'cashout'
statusStatus final: successful, failure, refunded
withdrawIdID interno do saque na WolfCash
valueValor sacado em reais
valueInCentsValor sacado em centavos
endToEndIdCódigo PIX único do saque (E2E). Pode ser usado para consultas Pix Out
providerAmountValor confirmado pelo provedor
providerConfirmedAtData/hora de confirmação pelo provedor
pixKeyChave PIX de destino
pixKeyTypeTipo da chave (CPF, CNPJ, EMAIL, PHONE, EVP)
payerDados do pagador (banco/provedor)
receiverDados do recebedor (cliente)
metadataMetadados customizados enviados na solicitação
🧠 Notas importantes
✔ O campo endToEndId já é salvo automaticamente no banco (Campo: ProviderEndToEndId, Tabela: Withdraws)
✔ Utilize o endToEndId para consultar status do PIX-out no provedor, rastrear auditoria bancária e exibir detalhes no painel administrativo
📬 Quando o webhook é enviado?
• O saque é confirmado (successful)
• O saque é estornado (refunded)
• O saque é recusado / failure
🧩 Status possíveis
pendingSolicitado, aguardando
successfulPago
failureFalhou / rejeitado
🔁 Reenvio automático
✓ 3 tentativas automáticas (1 min / 5 min / 15 min)
✓ Idempotência garantida pelo header X-Idempotency-Key
✅ Exemplo de resposta
{ "received": true, "idempotent": false }