Webhook PixIn (Depositos)
Receba notificacoes automaticas sempre que uma transacao de entrada (PIX) mudar de status.
Endpoint e Autenticacao
POSTDefinida pelo cliente na rota /api/SendWebhook
Exemplo: https://meusite.com.br/api/webhook/vorexy
Headers Obrigatorios
Headers
Content-Type: application/jsonX-Idempotency-Key: <uuid>Criacao de QR Code / Aguardando pagamento
Webhook Payload - Awaiting
{ "object": "transaction", "type": "cashin", "status": "awaiting", "companyId": 1, "transactionId": 128, "subTransactionId": 234, "externalRef": "LEAD-1762647077342_322066", "method": "pix", "value": 500, "currency": "BRL", "processedAt": "2025-11-09T00:10:00Z"}Pagamento Confirmado
Webhook Payload - Successful
{ "object": "transaction", "type": "cashin", "status": "successful", "companyId": 1, "transactionId": "6dcf2aee0d6148e1a12b78db78", "subTransactionId": 41394, "externalRef": "LEAD-1764252408748_52740", "method": "pix", "value": 500, "amount": 5, "currency": "BRL", "endToEndId": "E22896431202511271407sjUGQflhcVE", "providerEndToEndId": "E22896431202511271407sjUGQflhcVE", "providerTxId": "6dcf2aee0d6148e1a12b78db78", "pixKey": "c32361fa-44de-4be7-815f-0e782a10860c", "providerAmount": 5, "providerCreditedAt": "2025-11-27T11:07:14.997603", "providerPayload": { }, "payer": { "name": "ANGELO ALVES DE MARCHI", "documentId": "50651470862", "bankName": null, "ispb": null }, "receiver": { "name": null, "documentId": "48969523000177" }, "processedAt": "2025-11-27T11:07:14.997603Z"}Descricao dos Campos
valuenumberValor em centavos (500 = R$ 5,00)amountnumberValor em reais (5 = R$ 5,00)endToEndIdstringIdentificador unico da transacao Pix (E2E)providerEndToEndIdstringE2E retornado pelo provider (A55)providerTxIdstringID da transacao no provider (A55)pixKeystringChave PIX que recebeu o pagamentoproviderAmountnumberValor em reais retornado pelo providerproviderCreditedAtstringData/hora do credito no providerproviderPayloadobjectPayload completo retornado pelo provider (A55)payerobjectDados do pagador (quem enviou o PIX)receiverobjectDados do recebedor (sua empresa)processedAtstringData/hora do processamentoStatus Possiveis
awaitingAguardando pagamento
successfulPago / confirmado
failureFalha no pagamento
refundedEstornado / devolvido
Reenvio Automatico
OK3 tentativas automaticas (1 min / 5 min / 15 min)
OKIdempotencia garantida pelo header X-Idempotency-Key
Exemplo de Resposta
Response
{ "received": true, "idempotent": false }Exemplo de Handler
Node.js / Express
app.post('/webhook/vorexy', async (req, res) => { const { type, status, transactionId, value, amount, endToEndId, payer, providerCreditedAt } = req.body; const idempotencyKey = req.headers['x-idempotency-key']; // Verificar se ja processou este evento const processed = await checkIdempotency(idempotencyKey); if (processed) { return res.status(200).json({ received: true, idempotent: true }); } if (type === 'cashin' && status === 'successful') { console.log(`Pagamento recebido: R$ ${amount}`); console.log(`Valor em centavos: ${value}`); console.log(`Pagador: ${payer.name}`); console.log(`E2E ID: ${endToEndId}`); console.log(`Creditado em: ${providerCreditedAt}`); // Processar pagamento... await processPayment(transactionId, value); } // Marcar como processado await markAsProcessed(idempotencyKey); res.status(200).json({ received: true, idempotent: false });});