/api/v1/order/create Authentification requise
Inclut X-Bolt-Key, X-Bolt-Timestamp et X-Bolt-Signature. Utilisez un timestamp actuel en millisecondes et signez le timestamp avec le corps brut exact de la requête.
Correspondance exacte du montant
Pourquoi le montant renvoyé par l’API peut-il être légèrement supérieur ?
Plan de lancement
3 chiffres fixes
Entreprise Pro
2-6 configurables
Le système arrondit le montant vers le haut selon la précision configurée. Si une commande en attente utilise déjà ce montant sur le même réseau, avec la même devise et le même portefeuille, un petit écart distingue la nouvelle commande. Le montant dû n’est jamais inférieur au montant initial. Les comptes gratuits utilisent 3 décimales ; les membres Pro peuvent choisir entre 2 et 6. Utilisez payment.amount de la réponse.
Flux correspondant
Créer une commande
1amount
Votre backend envoie le montant du règlement et BoltUtil renvoie le montant payable en chaîne.
Afficher le paiement
2payment.amount
Affichez le montant exact retourné, le réseau et l'adresse de réception au payeur.
Vérifier le paiement sur la blockchain
3Webhook
Le moniteur effectue des comparaisons par réseau, adresse, jeton, montant et statut de la commande avant de vous en informer.
Notes d'intégration
Affichez payment.amount à partir de la réponse de création de commande, et non le montant de la demande ou le prix d'origine du produit.
Ne pas arrondir, tronquer ou supprimer le petit décalage décimal lors de l'affichage des instructions de paiement.
La modification de la précision du décalage n'affecte que les commandes nouvellement créées, pas les commandes en attente existantes.
Vérifiez la signature Webhook et dédoublonnez les notifications avant de remplir par externalOrderId et de confirmer le statut de paiement. Un paiement en attente de confirmation n'est pas un paiement réussi.
01. Corps de la demande
JSON PayloadMontant initial du produit ou de la commande commerciale dans la devise spécifiée par currency. Envoyez une chaîne pour éviter la perte de précision en virgule flottante. Le payeur doit payer le payment.amount retourné plutôt que cette valeur.
Votre commande commerciale ID, utilisée pour associer la commande BoltUtil. Les requêtes utilisent externalOrderId ; la réponse de création renvoie merchantExternalId et Webhooks renvoie externalOrderId.
Choisissez un réseau de paiement en utilisant l'une des valeurs majuscules ci-dessous. Par exemple, utilisez BASE pour Base ou ERC20 pour Ethereum.
Exemple de valeur
"network": "BASE"Choisissez la devise de paiement. Transmettez uniquement USDT ou USDC ; spécifiez le réseau séparément dans network.
Exemple de valeur
"currency": "USDC"Résumé facultatif du produit ou de l'entreprise pour les enregistrements de commande. La caisse actuelle n'affiche pas ce champ.
Récepteur Webhook pour cette commande. En cas d'omission, l'adresse par défaut activée dans votre tableau de bord marchand est utilisée.
Une fois le paiement terminé ou que l'utilisateur choisit de revenir, le paiement redirige le navigateur vers ce URL. Il ne s'agit que d'une destination de navigation et ne prouve pas le succès du paiement.
Le nombre de minutes pendant lesquelles une commande reste payable après sa création. Le forfait gratuit est fixé à 30 minutes ; Les membres Pro peuvent choisir entre 15 et 60 minutes.
JSON data défini par le marchand. BoltUtil ne le modifie pas et le renvoie inchangé dans la réponse de création de commande, la réponse de statut de commande et Webhook.
02. Détails de la réponse
application/jsondata.payment { ... }
data.time { ... }
Erreurs courantes
Ce sont des cas courants. Utilisez l'état actuel du HTTP et le code/message de réponse pour diagnostiquer les pannes. Une réponse d'erreur n'est pas un résultat de paiement.
- 401 : Vérifiez la clé API, la signature du corps brut et la milliseconde actuelle du timestamp (dans les 5 minutes suivant l'horloge du serveur).
- 400 : externalOrderId existe déjà. Recherchez la commande d'origine au lieu de créer une commande commerciale en double.
- 400 : Vérifiez les paramètres requis, le réseau/actif disponible, le portefeuille de réception et la configuration Webhook activée.
- 429 : limite de requêtes ou quota quotidien gratuit de création de commandes atteint. Vérifiez le code métier et message.