# Documentation blockwallets : façons d’intégrer

> Choisissez une intégration : liens de paiement, caisse POS et boutons à intégrer sans code ; l’API compatible Cryptomus ou l’API REST native ; API compatibles Cryptomus, NOWPayments et Coinbase Commerce ; prompts IA, AGENTS.md et MCP.
>
> HTML: https://blockwallets.io/docs?lang=fr · English: https://blockwallets.io/docs.md?lang=en

## Documentation

blockwallets vous permet d’accepter l’USDT et l’USDC, ainsi que le BTC, le LTC et des cryptos natives (créditées en dollars américains à un taux verrouillé). Chaque intégration ci-dessous crée le même type de facture sur la même page de paiement hébergée, avec les mêmes confirmations, frais et solde ; seule change la manière dont votre système nous parle. Choisissez celle qui vous convient, puis suivez sa page.

### Choisir une intégration

Regroupées selon votre point de départ. Chaque carte ouvre le guide complet.

#### Sans code

Encaissez depuis le tableau de bord marchand ; rien à installer.

- [Liens de paiement](https://blockwallets.io/docs?lang=fr#links): Saisissez un montant (ou laissez le payeur le saisir) et partagez le lien ou le QR code. Chaque visite crée une nouvelle facture.

- [Caisse POS pour boutiques](https://blockwallets.io/docs?lang=fr#pos): Le personnel ouvre un lien POS sur un téléphone ou une tablette, saisit le montant et le client scanne le QR code.

- [Bouton à intégrer](https://blockwallets.io/docs?lang=fr#embed): Collez un bouton « Payer » ou « Faire un don » dans n’importe quel site : HTML simple, ou HTML plus une balise script.

#### Nouvelle intégration par API

Vous écrivez l’intégration à partir de zéro.

- [API REST native](https://blockwallets.io/docs/api?lang=fr): Clé Bearer, montants en cents, `ref` idempotent, webhooks HMAC-SHA256 et une API d’événements. Les clés se génèrent vous-même dans le tableau de bord.

- [API compatible Cryptomus](https://blockwallets.io/docs/cryptomus?lang=fr): POST + JSON avec signature md5. Vous générez vous-même les identifiants dans le tableau de bord, et chaque endpoint clé a un panneau « Essayer ».

#### Migrer depuis une autre passerelle

Gardez votre code : des API compatibles, il vous suffit de changer l’URL de base et les clés.

- [Depuis Cryptomus](https://blockwallets.io/docs/cryptomus?lang=fr#cryptomus): Remplacez `https://api.cryptomus.com` par `https://blockwallets.io` et utilisez un nouveau merchant et une nouvelle API key. Les chemins, les paramètres, `sign` et les webhooks restent identiques.

- [Depuis NOWPayments](https://blockwallets.io/docs/nowpayments?lang=fr): Remplacez `https://api.nowpayments.io/v1` par `https://blockwallets.io/nowpayments/v1` et utilisez une nouvelle API key et un nouvel IPN secret. `x-nowpayments-sig` reste identique.

- [Depuis Coinbase Commerce](https://blockwallets.io/docs/coinbase-commerce?lang=fr): Passez `https://blockwallets.io/coinbase/` comme URL de base du SDK et utilisez une nouvelle API key et un nouveau webhook shared secret. `X-CC-Webhook-Signature` reste identique.

#### Laisser l’IA intégrer

Pour ceux qui n’écrivent pas de code mais utilisent un outil de programmation IA.

- [Générateur de prompt](https://blockwallets.io/docs/ai?lang=fr): Choisissez votre site, le style de paiement et l’outil IA ; copiez le prompt généré pour Claude Code, Codex, Cursor ou ChatGPT.

- [AGENTS.md](https://blockwallets.io/agents.md): Règles d’intégration, erreurs courantes et liste de contrôle de recette ; enregistrez-le à la racine de votre projet pour les agents de programmation.

- [Serveur MCP](https://blockwallets.io/docs/mcp?lang=fr): Laissez un outil IA chercher dans cette documentation et créer directement des factures de test.

#### Outils

Aide au débogage qui s’exécute dans votre navigateur.

- [Vérificateur de signature](https://blockwallets.io/docs/sign?lang=fr): Collez le corps d’une requête ou d’un webhook et voyez chaque étape de signature et où la vôtre diffère. L’API key ne quitte jamais votre navigateur.

### Compatible Cryptomus ou native ?

Les deux créent les mêmes factures sur la même page de paiement, avec les mêmes frais et le même solde. La différence tient au style des requêtes, au format des webhooks et à la façon d’obtenir les identifiants.

|  | Compatible Cryptomus | REST native |
| --- | --- | --- |
| Identifiants | Vous les générez vous-même dans le tableau de bord, sous « Développeurs › Intégration et clés » (un jeu pour Live, un pour Test) | Également à générer vous-même dans le tableau de bord, sous « Développeurs › Intégration et clés » : une clé Live et une clé Test (`bw_live_…` / `bw_test_…`) avec leurs clés de signature de webhook |
| Requêtes | Chaque appel est un `POST` + JSON, avec les en-têtes `merchant` et `sign` = `md5(base64(request body) + API key)` | REST (`GET` / `POST`) avec `Authorization: Bearer` ; le préfixe de la clé détermine Live ou Test |
| Montants | Chaînes décimales comme `"42.00"`, en USD, USDT ou USDC (toutes 1:1) | Entiers en cents américains, comme `4200` ; USD uniquement |
| Nouvelles tentatives | Le même `order_id` renvoie la facture existante | Le même `ref` avec les mêmes paramètres renvoie la facture existante ; avec des paramètres différents, 409 |
| Webhooks | Envoyés à l’`url_callback` de chaque facture ; la signature est le champ `sign` du corps | Envoyés à l’URL de webhook définie dans le tableau de bord ; `X-BW-Signature` = HMAC-SHA256 avec horodatage ; liste et renvoi via `/v1/events` |
| Adresses statiques | `/v1/wallet` : un réseau par appel | `/v1/deposit-accounts` : tous les réseaux à la fois pour un client |
| Outils | Panneaux « Essayer », vérificateur de signature, prompts IA et serveur MCP ; les SDK et plugins Cryptomus existants fonctionnent | Cette référence et ses exemples de code |

Vous partez de zéro ? Utilisez l’API REST native : montants en cents, `ref` idempotent, signatures de webhook horodatées et clés que vous générez vous-même dans le tableau de bord. Vous êtes déjà sur Cryptomus, ou vous voulez utiliser un SDK ou un plugin Cryptomus existant ? Utilisez l’API compatible Cryptomus.

### Démarrage rapide

De zéro à un paiement de test en cinq étapes (API compatible Cryptomus ; les autres API suivent les mêmes étapes avec leurs propres identifiants).

- Demandez l’accès sur la [page d’accueil](https://blockwallets.io/?lang=fr#join). Une fois approuvé, connectez-vous au [tableau de bord marchand](https://blockwallets.io/dashboard).

- Ouvrez « Développeurs › Intégration et clés » dans le tableau de bord, générez un merchant et une API key dans la colonne Test et ajoutez les domaines de votre site.

- Votre serveur crée une facture avec `POST /v1/payment` et redirige le client vers `result.url`.

- Payez-la avec « Simuler un paiement » sur la page de paiement, puis vérifiez que votre gestionnaire de webhook contrôle `sign` et crédite selon `payment_amount_usd`.

- Passez aux identifiants de la colonne Live et payez une fois un petit montant réel (« Tester un paiement » sur la page d’accueil du tableau de bord).

```http
POST https://blockwallets.io/v1/payment
merchant: <merchant>
sign: md5(base64(body) + API key)
Content-Type: application/json

{
  "amount": "42.00",
  "currency": "USD",
  "order_id": "order_1042",
  "url_callback": "https://shop.example/webhooks/crypto",
  "url_return": "https://shop.example/cart",
  "url_success": "https://shop.example/thanks?order=1042"
}
```

Le code Node.js, PHP et Python de chaque étape se trouve dans la documentation de l’[API compatible Cryptomus](https://blockwallets.io/docs/cryptomus?lang=fr#api) ; si vous préférez qu’une IA s’en charge, commencez par le [générateur de prompt](https://blockwallets.io/docs/ai?lang=fr).

### Liens de paiement (sans code)

Tableau de bord marchand → « Encaissements › Liens de paiement » → saisissez une description et un montant (imposez un réseau ou laissez le client choisir) → créez. Chaque lien a une URL et un QR code.

- Chaque fois que quelqu’un ouvre le lien, une nouvelle facture est créée : un même lien peut donc être réutilisé (p. ex. « Abonnement 99 $ »).

- Chaque paiement apparaît dans « Encaissements › Transactions » ; retirez-le vers votre portefeuille depuis « Fonds › Solde et retraits ».

- Si vous avez créé des identifiants et une URL de webhook dans « Développeurs › Intégration et clés », les paiements par lien sont aussi notifiés, au [format de webhook compatible Cryptomus](https://blockwallets.io/docs/cryptomus?lang=fr#webhooks).

- Pour arrêter d’encaisser, cliquez sur « Désactiver » : le lien cesse de fonctionner immédiatement.

### Caisse POS pour boutiques

Pour les comptoirs et les stands : tableau de bord marchand → « Encaissements › Caisse POS » → ouvrez un terminal et récupérez un lien POS. Le personnel l’ouvre sur un téléphone ou une tablette, saisit un montant et un QR code de paiement s’affiche ; quand le client paie, l’écran indique « Paid ».

- Une facture POS est valable 30 minutes. Les paiements arrivent sur votre solde et apparaissent dans « Encaissements › Transactions », et vous êtes notifié sur votre URL de webhook comme pour les liens de paiement.

- Un lien POS ne sert qu’à encaisser : il ne voit ni votre solde, ni les retraits, ni les autres commandes, ni les réglages, ni les identifiants.

- Appareil perdu ou employé parti ? Révoquez ce terminal dans le tableau de bord et son lien cesse de fonctionner immédiatement.

### Bouton à intégrer

Tableau de bord marchand → « Encaissements › Liens de paiement » → « Bouton à intégrer » : choisissez le texte, la couleur, la taille et la forme, puis copiez l’extrait. Un clic sur le bouton ouvre la page de paiement de ce lien de paiement.

- HTML simple : un lien stylé sans script, donc utilisable partout où l’on peut coller du HTML (créateurs de sites, forums, signatures d’e-mail).

- Avec le script : ajoutez `data-blockwallets` et une balise `/embed.js` ; sur ordinateur la page de paiement s’ouvre dans une petite fenêtre centrée, sur mobile elle s’ouvre normalement.

- Le script n’envoie aucune requête, ne dépose aucun cookie et n’ajoute aucun iframe. Si la page le bloque, le bouton reste un lien ordinaire qui fonctionne.

Dans les extraits ci-dessous, remplacez `/l/pl_…` par l’adresse de votre propre lien de paiement.

#### HTML simple

```html
<a href="https://blockwallets.io/l/pl_…" target="_blank" rel="noopener nofollow"
   style="display:inline-flex;align-items:center;height:44px;padding:0 22px;border-radius:999px;background:#1f5a3d;color:#ffffff;font:600 16px/1 sans-serif;text-decoration:none">Pay with crypto</a>
```

#### HTML + script

```html
<a href="https://blockwallets.io/l/pl_…" target="_blank" rel="noopener nofollow"
   data-blockwallets data-color="green" data-size="m" data-shape="pill">Pay with crypto</a>
<script src="https://blockwallets.io/embed.js" async></script>
```
