Referência da API/Cobrança e links de pagamento
Cobrança e links de pagamento
Receba no seu saldo por um link de pagamento público com transferência bancária, cartão e cripto, por uma solicitação de valor fixo ligada a uma fatura, ou por uma conta virtual em nome da sua empresa em USD, EUR ou MXN. Uma solicitação é marcada como paga apenas quando um pagamento recebido coincide sem ambiguidade em valor, moeda, momento e titular; transferências não conciliadas ainda creditam o seu saldo.
Create a payment link
/payment-links| Campo | Tipo | obrigatório | Observações |
|---|---|---|---|
| name | string | opcional | |
| methods | array | opcional | |
| published | boolean | opcional |
Requisição
{
"name": "Invoices",
"methods": [
"bank_transfer",
"card",
"crypto"
],
"published": true
}Resposta 201
{
"id": "pl_7a2c",
"name": "Invoices",
"url": "https://decaf.so/pay/cargo-ledger",
"methods": [
{
"type": "bank_transfer",
"ready": true
},
{
"type": "card",
"ready": true
},
{
"type": "crypto",
"ready": true
}
],
"published": true
}List payment links
/payment-linksGet a payment link
/payment-links/{id}Parâmetros
idpathstringobrigatório
Update methods or publication
/payment-links/{id}Parâmetros
idpathstringobrigatório
| Campo | Tipo | obrigatório | Observações |
|---|---|---|---|
| name | string | opcional | |
| methods | array | opcional | |
| published | boolean | opcional |
Create a fixed-amount payment request
/payment-requestsMarked paid only when an incoming payment matches amount, currency, timing and owner unambiguously. Unmatched bank transfers still credit your balance as deposits.
| Campo | Tipo | obrigatório | Observações |
|---|---|---|---|
| payment_link_id | string | obrigatório | |
| amount | Amount | obrigatório | Decimal string. Up to two decimals for fiat, six for USDC. |
| currency | string | obrigatório | |
| reference | string | opcional | |
| expires_at | string | opcional |
Requisição
{
"payment_link_id": "pl_7a2c",
"amount": "1250.00",
"currency": "USD",
"reference": "INV-0912",
"expires_at": "2026-09-30T00:00:00Z"
}Resposta 201
{
"id": "pr_31aa",
"url": "https://decaf.so/pay/cargo-ledger/pr_31aa",
"amount": "1250.00",
"currency": "USD",
"reference": "INV-0912",
"status": "open",
"expires_at": "2026-09-30T00:00:00Z"
}Exemplos: Create a fixed-amount payment request
curl -X POST https://sandbox.api.decaf.so/v1/payment-requests \
-H "Authorization: Bearer $DECAF_API_KEY" \
-H "Content-Type: application/json" \
-d '{"payment_link_id":"pl_7a2c","amount":"1250.00","currency":"USD","reference":"INV-0912","expires_at":"2026-09-30T00:00:00Z"}'Open a virtual account
/virtual-accountsRequires business verification and the corridor. Details are returned masked.
| Campo | Tipo | obrigatório | Observações |
|---|---|---|---|
| currency | enum: USD, EUR, MXN | obrigatório |
Requisição
{
"currency": "EUR"
}Resposta 201
{
"id": "va_1f3e",
"currency": "EUR",
"rail": "sepa",
"status": "active",
"details": {
"iban": "DE•• •••• 3310",
"bic": "•••",
"beneficiary_name": "Cargo Ledger GmbH"
},
"reference_required": true
}Erros: 403 verification_required
Exemplos: Open a virtual account
curl -X POST https://sandbox.api.decaf.so/v1/virtual-accounts \
-H "Authorization: Bearer $DECAF_API_KEY" \
-H "Content-Type: application/json" \
-d '{"currency":"EUR"}'List virtual accounts
/virtual-accountsObtenha 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.