Referência da API/Cotações e corredores
Cotações e corredores
Os canais listam cada destino com seu tipo de destinatário, limites, janela de chegada e sua taxa no seu nível. Uma cotação precifica um pagamento em um canal e vale por 60 segundos. As taxas caem com o volume dos últimos 30 dias; os níveis são combinados por conta. Para a tabela de corredores atual use o explorador de corredores.
List channels
/channelsEvery destination with status, coverage, recipient type, limits, typical arrival and your fee at your current tier.
Resposta 200
{
"data": [
{
"id": "spei_mxn",
"status": "live",
"country": "MX",
"currency": "MXN",
"rail": "spei",
"recipient_type": "bank_account",
"arrival": {
"min": "PT0M",
"max": "PT5M"
},
"limits": {
"min": "30.12",
"max": "300000.00",
"currency": "USDC"
},
"fee": {
"percent": "0.35",
"flat": "0.50",
"currency": "USDC"
}
},
{
"id": "claim_link",
"status": "live",
"country": null,
"currency": "USDC",
"rail": "claim_link",
"recipient_type": "phone",
"arrival": {
"min": "PT0M",
"max": "P30D"
},
"limits": {
"min": "1.00",
"max": "50000.00",
"currency": "USDC"
},
"fee": {
"percent": "0",
"flat": "0",
"currency": "USDC"
}
}
]
}Required recipient fields for a channel
/channels/{channel}/requirementsParâmetros
channelpathstringobrigatório
Resposta 200
{
"channel": "spei_mxn",
"recipient_type": "bank_account",
"fields": [
{
"name": "holder_name",
"type": "string",
"required": true
},
{
"name": "clabe",
"type": "string",
"required": true,
"pattern": "^[0-9]{18}$"
},
{
"name": "recipient_kind",
"type": "enum",
"values": [
"individual",
"business"
],
"required": true
}
],
"limits": {
"min": "30.12",
"max": "300000.00",
"currency": "USDC"
}
}Create a quote
/quotesPrice one payout on one channel. Provide source_amount or destination_amount. Valid 60 seconds.
| Campo | Tipo | obrigatório | Observações |
|---|---|---|---|
| channel | string | obrigatório | |
| source_amount | Amount | opcional | Decimal string. Up to two decimals for fiat, six for USDC. |
| destination_amount | Amount | opcional | Decimal string. Up to two decimals for fiat, six for USDC. |
Requisição
{
"channel": "chats_hkd",
"source_amount": "2500.00"
}Resposta 201
{
"id": "qt_5m2n",
"channel": "chats_hkd",
"source_amount": "2500.00",
"source_currency": "USDC",
"destination_amount": "19491.72",
"destination_currency": "HKD",
"rate": "7.8280",
"fees": {
"provider": "1.25",
"decaf": "8.75",
"fx_spread": "3.90",
"total": "13.90",
"currency": "USDC"
},
"arrival": {
"min": "PT1M",
"max": "P3D"
},
"expires_at": "2026-09-16T15:04:05Z"
}Erros: 400 validation_error, channel_unavailable, amount_out_of_range
Exemplos: Create a quote
curl -X POST https://sandbox.api.decaf.so/v1/quotes \
-H "Authorization: Bearer $DECAF_API_KEY" \
-H "Content-Type: application/json" \
-d '{"channel":"chats_hkd","source_amount":"2500.00"}'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.