Decaf
Sommaire

Référence API/Liens de retrait : payer un téléphone ou un e-mail

Liens de retrait : payer un téléphone ou un e-mail

Envoyez à quelqu’un sans compte bancaire, sans portefeuille et sans compte Decaf. Les fonds sont retenus jusqu’à ce que le bénéficiaire ouvre le lien, vérifie son numéro et choisisse comment recevoir parmi les méthodes disponibles dans son pays. Le paiement passe de awaiting_claim à claimed puis succeeded ; les liens non réclamés reviennent sur votre solde. La vérification de recevabilité indique avant l’envoi si une personne dans ce pays peut être payée.

Create a payout

POST/payouts

One transfer to one recipient on one channel. Pass a saved recipient_id or an inline recipient. Either source_amount or destination_amount. quote_id is optional; without it the payout is priced at execution.

Paramètres

  • Idempotency-Keyheaderstringfacultatif
ChampTypeobligatoireNotes
recipient_idstringfacultatif
recipientInlineRecipientfacultatif
channelstringobligatoire
quote_idstringfacultatif
source_amountAmountfacultatifDecimal string. Up to two decimals for fiat, six for USDC.
destination_amountAmountfacultatifDecimal string. Up to two decimals for fiat, six for USDC.
referencestringfacultatif
memostringfacultatifTravels with the payment where the rail supports it.
messagestringfacultatifClaim links only. Shown to the recipient.

Requête

{
  "recipient_id": "rcp_9d1a",
  "channel": "spei_mxn",
  "quote_id": "qt_5m2n",
  "source_amount": "1000.00",
  "reference": "INV-2026-0912",
  "memo": "Freight, week 37"
}

Réponse 201

{
  "id": "po_1b7e",
  "status": "submitted",
  "channel": "spei_mxn",
  "recipient_id": "rcp_9d1a",
  "source_amount": "1000.00",
  "source_currency": "USDC",
  "destination_amount": "16865.35",
  "destination_currency": "MXN",
  "rate": "16.86535",
  "fees": {
    "provider": "0.50",
    "decaf": "5.00",
    "total": "5.50",
    "currency": "USDC"
  },
  "reference": "INV-2026-0912",
  "estimated_arrival": "2026-09-16T15:20:00Z",
  "provider_reference": null,
  "attempts": 1,
  "created_at": "2026-09-16T15:01:12Z"
}

Erreurs: 400 validation_error, channel_unavailable, amount_out_of_range; 402 insufficient_balance; 409 idempotency_conflict; 410 quote_expired

Exemples: Create a payout

curl -X POST https://sandbox.api.decaf.so/v1/payouts \
  -H "Authorization: Bearer $DECAF_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"recipient_id":"rcp_9d1a","channel":"spei_mxn","quote_id":"qt_5m2n","source_amount":"1000.00","reference":"INV-2026-0912","memo":"Freight, week 37"}'

Check whether a phone or email can receive

GET/recipients/check

Says before sending whether a person in that country can receive, and by which methods.

Paramètres

  • typequeryenum: phone, emailobligatoire
  • numberquerystringfacultatif
  • addressquerystringfacultatif

Réponse 200

{
  "receivable": true,
  "country": "MX",
  "methods": [
    "spei_bank",
    "decaf_wallet"
  ],
  "kyc_required_for": [
    "spei_bank"
  ]
}

Obtenir l’accès

Développez sur le sandbox dès cette semaine.

Dites-nous les corridors dont vous avez besoin et qui vous payez. Les clés sandbox sont délivrées par une personne.