Documentação XFlow API

POST

Webhook PixIn (Depósitos)

Receba notificações automáticas sempre que uma transação de entrada (Pix) mudar de status.

🔗 Endpoint & Autenticação

Método
POST
URL

Definida pelo cliente na rota /api/SendWebhook

Exemplo: https://meusite.com.br/api/webhook/xflow

Headers Obrigatórios

Content-Type: application/json
X-Idempotency-Key: <uuid>

⚙️ Estrutura do Evento

🟢 Aguardando pagamento

{
  "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

{
  "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",
  "payer": {
    "name": "ANGELO ALVES DE MARCHI",
    "documentId": "50651470862",
    "bankName": null,
    "ispb": null
  },
  "receiver": {
    "name": null,
    "documentId": "48969523000177"
  },
  "processedAt": "2025-11-27T11:07:14.997603Z"
}

📋 Descrição dos Campos

value

Valor em centavos (500 = R$ 5,00)

amount

Valor em reais (5 = R$ 5,00)

endToEndId

Identificador único da transação Pix (E2E)

providerEndToEndId

E2E retornado pelo provider

providerTxId

ID da transação no provider

pixKey

Chave PIX que recebeu o pagamento

providerAmount

Valor em reais retornado pelo provider

providerCreditedAt

Data/hora do crédito no provider

payer

Dados do pagador (quem enviou o PIX)

receiver

Dados do recebedor (sua empresa)

processedAt

Data/hora do processamento

🧩 Status possíveis

awaiting

Aguardando pagamento

successful

Pago / confirmado

failure

Falha no pagamento

refunded

Estornado / devolvido

🔁 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 }