---
canonical: https://validationfacture.fr/blog/api-payable-a-l-appel-x402-agents
title: "Une API que les agents IA peuvent payer seuls : x402 en production"
description: "Sans compte, sans clé, sans humain : un agent envoie une facture, reçoit un 402 avec le prix en USDC sur Base, paie, et obtient son contrôle avec preuve signée. Comment et pourquoi nous avons mis x402 en production — et ce que ça change pour l'écosystème agentique."
date: "2026-08-23"
slug: "api-payable-a-l-appel-x402-agents"
---

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 :

1. L'agent appelle `POST /v1/validate` sans authentification.
2. L'API répond `402` avec un descriptif machine-lisible : réseau (`base`),
   actif (USDC), montant (`0.108` USDC pour un contrôle à 0,10 €), adresse
   de règlement, durée de validité.
3. 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`.
4. 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](/llms.txt) et le
[catalogue machine-lisible](https://api.validationfacture.fr/v1/catalog)),
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](/tarifs) incluent des documents et se paient
en euros par carte — clé API délivrée automatiquement après le paiement,
[preuve signée](/blog/journal-de-preuves-chaine) 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](/docs). Et si vous voulez juste voir le `402`
de vos propres yeux :

```bash
curl -s -X POST https://api.validationfacture.fr/v1/validate \
  -H "Content-Type: application/json" -d '{"invoice": {}}' | jq .accepts
```
