Aller au contenu principal

Erreurs

Une erreur renvoie un code HTTP et un objet error :

{
"error": {
"type": "invalid_request",
"code": "expires_at_required",
"message": "expires_at est obligatoire pour un paiement à la livraison.",
"param": "expires_at"
}
}

Programmez sur code, stable ; message est destiné au développeur et peut changer. param nomme le champ en cause.

HTTPtypecode
400invalid_requestamount_invalid, currency_invalid, expires_at_required, expires_at_invalid, url_invalid, metadata_invalid, alias_invalid, parameter_invalid, balance_insufficient
401authenticationinvalid_api_key
403permissionaccount_not_activated (clé de production avant l'activation), payout_account_missing
404not_foundpayment_not_found, payout_not_found
409conflictidempotency_key_reused, idempotency_key_in_use, payment_already_final
422rail_erroralias_unknown, participant_unavailable
429rate_limitrate_limited, too_many_attempts, alias_rate_limited
5xxapi_errorinternal_error

Réessayer​

  • Réessayez après une coupure réseau, une erreur 5xx, rate_limited ou idempotency_key_in_use, avec la même clé d'idempotence et un délai croissant. Respectez l'en-tête Retry-After d'une réponse 429.
  • Ne réessayez pas les autres erreurs telles quelles : corrigez la requête.

Le SDK PHP applique ces règles pour vous.

Limites​

  • 25 requêtes par seconde et par clé (rate_limited).
  • 5 tentatives par paiement (too_many_attempts).
  • En production, 3 demandes vers un même alias en 10 minutes (alias_rate_limited).