Erreurs
Updated:
L'API x402 utilise de véritables codes d'état HTTP. Chaque erreur possède le même corps JSON, et retry_action indique à votre agent ce qu'il doit faire ensuite.
Corps de l'erreur
Nom | Type | Description |
|---|---|---|
erreur | Chaîne de caractères | Code d'erreur, voir le tableau ci-dessous |
message | Chaîne de caractères | Court message lisible par l'utilisateur |
réessayable | Booléen | La répétition peut-elle aider ? |
retry_action | Chaîne de caractères | Ce qu'il faut faire : |
retry_after_seconds | Nombre entier | Quand réessayer ; équivaut à |
payment_state | Chaîne de caractères |
|
authorization_expires_at | Chaîne de caractères | Jusqu'à la date à laquelle votre autorisation est encore valable ; ne signez pas de nouvelle autorisation avant |
order_id, operation_id, poll_url | Chaîne de caractères | L'ordre et l'opération auxquels le paiement se rapporte, le cas échéant |
bound_wallet | Chaîne de caractères |
|
facilitator_reason | Chaîne de caractères | Motif d'échec d'un virement bancaire, à choisir dans une liste prédéfinie, ou |
détail | Chaîne de caractères | Détails, par exemple le chemin d'accès au champ invalide : |
Réponses comportant une nouvelle citation (quote_expired, payment_expired, quote_bound_to_other_wallet) contiennent également les balises de citation et le PAYMENT-REQUIRED en-tête.
{
"error": "payment_not_settleable",
"message": "The presented authorization can still be settled",
"retryable": true,
"retry_action": "wait_and_retry",
"retry_after_seconds": 512,
"payment_state": "unused",
"authorization_expires_at": "2026-11-02T10:16:00Z"
}Réessayer les actions
retry_action | Ce qu'il faut faire |
|---|---|
| Signez les nouvelles exigences issues de cette réponse ( |
| Envoyez la même demande avec les mêmes |
| Dans |
| Recommencez (nouvelle citation, nouvelle signature) au plus tôt le |
| Répéter la même demande ne servira à rien. |
| Contactez le service d'assistance. Ne signez pas de nouvelle autorisation. |
Codes d'erreur
erreur | HTTP | retry_action | Quand |
|---|---|---|---|
| 402 |
| Un point de terminaison payant a été appelé sans |
| 402 |
| L'en-tête de paiement est mal formé ou n'est pas conforme à la norme x402 version 2 ( |
| 402 |
| Le portefeuille ne dispose pas de suffisamment d'USDC. Rechargez le portefeuille et répétez la même demande tant que l'autorisation est valide. |
| 402 |
| Le devis a expiré ou a déjà été payé, et votre autorisation a également expiré. Un nouveau devis figure dans la réponse. |
| 402 |
| L'autorisation a expiré sans avoir été utilisée ou a été annulée. Rien n'a été prélevé. Un nouveau devis figure dans la réponse. |
| 400 |
| Champ non valide, champ inconnu, JSON non valide, corps supérieur à 64 KiB ; pays, période, quantité, niveau, forfait ou options non disponibles ; un deuxième forfait résidentiel ; règles spécifiques au point de terminaison |
| 400 |
|
|
| 403 |
|
|
| 403 |
| Le portefeuille est bloqué ou figure sur une liste de sanctions |
| 401 |
| Non |
| 404 |
| L'ordre n'existe pas, ou le jeton n'est pas valide pour celui-ci |
| 404 |
| La recharge ou le défi n'existe pas, ou le jeton n'est pas valable pour celui-ci |
| 409 |
| Une même autorisation (payeur et nonce) a donné lieu à des contenus différents |
| 409 |
| Le code d'accès n'est plus valide, mais votre autorisation peut toujours être exécutée. Veuillez patienter jusqu'à ce que |
| 409 |
| Le paiement est en cours d'examen par notre équipe. |
| 409 |
| Un autre portefeuille a déjà utilisé cette citation. Une nouvelle citation figure dans la réponse. |
| 409 |
| Un autre paiement correspondant à ce devis est en cours de traitement |
| 409 |
| Le corps de la demande payante ne correspond pas au devis, ou la répétition d'une autorisation de paiement entraîne une nouvelle demande |
| 409 |
| Votre portefeuille a déjà utilisé cela |
| 429 |
| Une limite a été dépassée (Contraintes) |
| 503 |
| Le paiement est toujours en cours de traitement. Répétez la même demande dans |
| 503 |
| Le service n'accepte temporairement plus de nouveaux paiements |
| 503 |
| Problème temporaire : le prix, le catalogue, la vérification du paiement ou un autre service n'est pas disponible |
| 500 |
| Erreur inattendue |
Une méthode HTTP incorrecte renvoie 405 avec le code invalid_request.
Chaque réponse du service comporte le X-Request-Id En-tête. Transmettez-le au service d'assistance lorsque vous signalez un problème.