Il existe désormais trois façons de payer un contrôle de facture chez nous, et la plus étrange des trois est peut-être la plus importante : un agent logiciel autonome peut consommer l'API sans compte, sans carte, sans inscription — il paie l'appel, littéralement, dans la requête HTTP.
Le code de statut oublié
HTTP a réservé le code 402 Payment Required en 1997 et ne l'a jamais
vraiment utilisé. Le protocole ouvert x402 lui donne enfin son sens :
- L'agent appelle
POST /v1/validatesans authentification. - L'API répond
402avec un descriptif machine-lisible : réseau (base), actif (USDC), montant (0.108USDC pour un contrôle à 0,10 €), adresse de règlement, durée de validité. - L'agent signe une autorisation de paiement (EIP-3009 : un transfert
pré-autorisé, pas une clé de wallet exposée) et rejoue la requête avec
l'en-tête
X-PAYMENT. - Nous vérifions et réglons via un facilitateur, exécutons le contrôle, et
renvoyons le résultat plus le reçu on-chain dans
X-PAYMENT-RESPONSE.
Point de conception qui compte : le règlement a lieu après le calcul. Un appel qui échoue n'est jamais débité — c'est la condition pour qu'un agent (ou son opérateur humain) accepte de pointer un budget vers vous.
Pourquoi c'est adapté aux agents — et pas seulement un gadget
Un agent qui doit s'inscrire, attendre un e-mail, stocker une clé et gérer un abonnement mensuel n'est pas autonome : il a un humain dans sa boucle pour chaque nouveau fournisseur. Le paiement à l'appel inverse le rapport : la découverte (notre llms.txt et le catalogue machine-lisible), le prix, et le paiement sont tous lisibles et exécutables par la machine. Le premier appel utile d'un agent peut être à trente secondes de sa découverte du service.
Pour les volumes réguliers, les humains gardent l'avantage : les abonnements Starter et Scale incluent des documents et se paient en euros par carte — clé API délivrée automatiquement après le paiement, preuve signée dans les deux cas. Même moteur, même référentiel, seule la tuyauterie de facturation change.
Les détails qui fâchent (et qu'on assume)
- Testnet d'abord. Notre challenge 402 a tourné sur Base Sepolia jusqu'à ce que la chaîne de règlement réelle soit vérifiée de bout en bout. Annoncer du mainnet avec un règlement factice, c'est servir gratuit en le cachant — nous avons préféré tester, puis basculer.
- Le plafond de dépense reste utile. Même en x402, un agent en boucle de retry peut brûler un budget. Les comptes à clé API ont un plafond mensuel dur côté serveur ; en x402 pur, c'est le wallet de l'agent qui borne le risque — par construction, il ne peut pas dépenser plus qu'il ne signe.
- La comptabilité existe encore. Encaisser des USDC dans une société française a des implications comptables réelles. Ce n'est pas un détail technique, et votre expert-comptable a son mot à dire.
Essayer
Le descriptif complet du protocole côté API est dans la
documentation interactive. Et si vous voulez juste voir le 402
de vos propres yeux :
curl -s -X POST https://api.validationfacture.fr/v1/validate \
-H "Content-Type: application/json" -d '{"invoice": {}}' | jq .accepts