Decaf
Conteúdo

Referência da API/Webhooks

Webhooks

Registre um endpoint e receba eventos assinados a cada mudança de estado de pagamentos, dispersões, depósitos e solicitações de pagamento. As entregas são repetidas com espera por 24 horas. Verifique Decaf-Signature como HMAC-SHA256 sobre o carimbo de tempo, um ponto e o corpo bruto; rejeite carimbos com mais de cinco minutos.

Eventos

EventoQuando
payout.submittedFunds committed and handed to the rail
payout.awaiting_claimClaim link sent
payout.claimedRecipient claimed and chose a method
payout.succeededDelivered
payout.failedFinal failure after retries
payout.refundedFunds returned after a failed delivery
disbursement.awaiting_approvalSubmitted for approval
disbursement.launchedExecution started
disbursement.completedEvery item final and succeeded
disbursement.completed_with_failuresEvery item final, at least one failed
deposit.receivedA bank or on-chain deposit credited your balance
payment_request.paidA fixed-amount request was matched

Register a webhook endpoint

POST/webhooks

Deliveries retry with backoff for 24 hours. The secret is shown once. Verify Decaf-Signature as HMAC-SHA256 over t + . + raw_body; reject timestamps older than five minutes.

CampoTipoobrigatórioObservações
urlstringobrigatório
eventsarrayobrigatório

Requisição

{
  "url": "https://example.com/decaf",
  "events": [
    "payout.*",
    "disbursement.*",
    "deposit.*"
  ]
}

Resposta 201

{
  "id": "wh_2c1d",
  "url": "https://example.com/decaf",
  "events": [
    "payout.*",
    "disbursement.*",
    "deposit.*"
  ],
  "secret": "whsec_9f3e..."
}

Exemplos: Register a webhook endpoint

curl -X POST https://sandbox.api.decaf.so/v1/webhooks \
  -H "Authorization: Bearer $DECAF_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com/decaf","events":["payout.*","disbursement.*","deposit.*"]}'

List webhooks

GET/webhooks

Delete a webhook

DELETE/webhooks/{id}

Parâmetros

  • idpathstringobrigatório

Obtenha acesso

Construa contra o sandbox esta semana.

Conte-nos os corredores de que precisa e quem você paga. As chaves de sandbox são emitidas por uma pessoa.