Développeurs
Créer une facture
Une seule requête POST crée une facture et renvoie le lien vers la page de paiement. Le client y choisit une cryptomonnaie et un réseau.
Requête
curl
curl -X POST https://api.crybit.net/api/v1/payments \
-H "X-Public-Key: pk_…" \
-H "X-Private-Key: sk_…" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"amount":1490,"currency":"RUB","order_id":"ORD-1048","purpose":"Order 1048"}'| Champ | Signification |
|---|---|
amount | Obligatoire. Un nombre à partir de 0,01. Il existe un minimum en USDT car les frais de réseau ne peuvent pas dépasser la facture lorsque c'est le marchand qui les paie : interrogez GET /api/payments/quote pour connaître le minimum actuel. |
currency | Obligatoire. Fiat (RUB, USD, EUR, CNY, GBP, CHF, JPY, KZT et autres devises majeures) ou USDT/USDC. Le montant est converti au taux en temps réel. |
order_id | Votre propre identifiant de commande, jusqu'à 80 caractères. S'il est vide, CryBit génère CB-…. |
purpose | Description, jusqu'à 240 caractères. |
ttl_minutes | Durée de vie de 5 à 1440 minutes, 30 par défaut. |
return_url | Où le client revient après le paiement (http ou https, jusqu'à 500 caractères). Utilise par défaut l'URL de retour du marchand. |
crypto, network | Facultatif. Passez les deux pour obtenir directement l'adresse, le montant et un QR code dans la réponse, par exemple USDT et TRC-20. |
confirmation | Facultatif. {"type":"embedded"} pour le widget intégré. Le token est toujours présent dans la réponse. |
Réponse
La réponse est 201 avec l'objet facture. Envoyez le client vers callback_url (la page de paiement). Sans crypto ni network, needs_method vaut true et le client choisit sur cette page.
JSON
{
"uuid": "28d0ff38-949c-435e-ad41-c81c219b3597",
"order_id": "ORD-1048",
"amount": 1490,
"currency": "RUB",
"status": "waiting",
"sandbox": true,
"needs_method": true,
"callback_url": "https://pay.crybit.net/28d0ff38-949c-435e-ad41-c81c219b3597",
"confirmation": { "type": "embedded", "confirmation_token": "28d0ff38-…", "widget_url": "https://pay.crybit.net/widget.js" },
"expires_at": "2026-09-21T13:41:42+00:00"
}Statut
GET /api/v1/payments/{uuid} renvoie le même objet. Le statut est waiting, paid, expired ou cancelled. Une fois que le client a choisi un réseau, l'objet contient crypto, network, address et fee ; après le paiement, il contient status paid, txid et paid_at. Une facture waiting dont la durée de vie est dépassée devient expired lorsque vous la consultez. fee_payer vaut shop lorsque le marchand paie les frais et buyer lorsque le montant à payer les inclut déjà.
FAQ
Quels en-têtes dois-je envoyer ?
X-Public-Key et X-Private-Key, tous deux obligatoires. Une clé privée manquante, erronée ou périmée renvoie 401.
Existe-t-il une limite de débit ?
60 requêtes par minute et par clé.
