Passer au contenu principal

Documentation Index

Fetch the complete documentation index at: https://docs.blockradar.co/llms.txt

Use this file to discover all available pages before exploring further.

En résumé
Blockradar Checkout vous permet d’accepter des paiements en stablecoins via des liens partageables, sans comptes clients ni intégrations complexes. Créez un lien, partagez-le et recevez les paiements directement sur votre wallet.

Prérequis

Avant de créer des liens de paiement, assurez-vous d’avoir :
1

Clé API

Obtenez votre clé API depuis le Dashboard Blockradar. Accédez à Developers pour en générer une.
2

Master Wallet créée

Créez une master wallet via l’API Create Wallet ou depuis le dashboard. Les liens de paiement sont liés à une wallet.
3

Plan Checkout actif

Assurez-vous que la fonctionnalité Checkout est activée sur votre compte. Contactez [email protected] si vous devez l’activer.
4

Webhook configuré (facultatif)

Configurez les webhooks pour recevoir des notifications de paiement en temps réel. Consultez Webhooks pour les détails de configuration.

Introduction

Les liens de paiement sont des URLs partageables qui permettent à n’importe qui d’envoyer des paiements en stablecoins vers votre wallet. Ils sont parfaits pour :
  • E-commerce : Envoyer aux clients pour des achats de produits
  • Facturation : Inclure dans les factures pour des services rendus
  • Dons : Partager sur les réseaux sociaux ou les sites web
  • Paiements de marketplace : Faciliter les transactions peer-to-peer
  • Facturation par abonnement : Collecte de paiements récurrents

Comment fonctionnent les liens de paiement

Création

Créez un lien de paiement avec des paramètres spécifiques tels que le montant, le nom, la description et les limites de paiement.

Partage

Partagez l’URL générée avec vos clients par e-mail, messagerie ou intégrez-la sur votre site web.

Paiement

Les clients cliquent sur le lien, saisissent leurs informations de paiement et complètent la transaction.

Confirmation

Vous recevez des notifications par webhook et pouvez suivre l’état du paiement en temps réel.

Fonctionnalités des liens de paiement

  • Paramètres personnalisables : Définissez le montant, la description, les limites de paiement et la metadata
  • URLs partageables : Générez des liens de paiement uniques pour chaque transaction
  • Pré-remplissage des données client : Pré-remplissez les informations client via les paramètres de query de l’URL
  • Suivi en temps réel : Surveillez l’état des paiements et recevez des notifications par webhook
  • Support multi-réseau : Acceptez des paiements sur différents réseaux blockchain
  • Intégration auto-sweep : Les fonds sont automatiquement consolidés vers la master wallet

Support multi-actifs

  • USDT, USDC, DAI, BUSD sur plusieurs blockchains
  • Ethereum, BSC, Polygon, Base, Arbitrum, Optimism, Tron, Solana, Celo
  • Conversion et routage automatiques pour une expérience utilisateur optimale

Configuration flexible

  • Montants fixes pour des produits/services spécifiques
  • Montants variables pour les dons ou les paiements personnalisés
  • Limites de paiement pour garantir la ponctualité des paiements
  • Metadata personnalisée pour le suivi et l’analytique
  • Notifications par webhook pour les mises à jour en temps réel

Sécurité et conformité

  • Screening AML sur tous les paiements entrants
  • Validation et vérification d’adresses
  • Détection et prévention de la fraude
  • Conformité réglementaire dans différentes juridictions

Flux de paiement

1. Création du lien de paiement

Lorsque vous créez un lien de paiement, Blockradar renvoie une URL de paiement unique :
{
  "id": "pl_123456789",
  "name": "Product Purchase",
  "url": "https://pay.blockradar.co/payment-link-10012",
  "amount": "100.00",
  "currency": "USD",
  "active": true
}

2. Pré-remplissage des données client avec les paramètres de query

Vous pouvez enrichir l’URL de paiement avec des paramètres de query pour pré-remplir automatiquement les informations client sur la page de paiement :
https://pay.blockradar.co/payment-link-10012?name=Customer&[email protected]&reference=ORDER123&amount=99.99&redirectUrl=https://yoursite.com/payment-success
Paramètres de query facultatifs pris en charge :
  • name - Nom du client (apparaît sur la page de paiement)
  • email - Adresse e-mail du client
  • reference - Référence personnalisée qui sera incluse dans les réponses de transaction
  • amount - Pré-remplir le montant du paiement (remplace le montant par défaut du lien si défini)
  • redirectUrl - URL vers laquelle rediriger après la finalisation du paiement

3. Redirection après paiement

Lorsqu’un redirectUrl est fourni, les clients seront automatiquement redirigés vers l’URL spécifiée une fois le traitement du paiement terminé. L’URL de redirection inclura les paramètres de query suivants : Paramètres de query de la redirection :
  • status - État du paiement (success, failed, pending)
  • tx_reference - ID de référence de la transaction
  • reference - Votre référence personnalisée (si fournie)
  • slug - Identifiant du lien de paiement
Exemple d’URL de redirection :
https://yoursite.com/payment-success?status=success&tx_reference=tx_abc123&reference=ORDER123&slug=payment-link-10012
La redirection ne se produit qu’une fois le traitement du paiement terminé. Si aucun redirectUrl n’est fourni, les clients verront la page de finalisation de paiement par défaut.

4. Configuration du montant

Les liens de paiement prennent en charge deux modes de montant : Montant fixe (prédéfini)
  • Lorsque vous spécifiez un amount lors de la création, les clients ne peuvent pas modifier le montant du paiement
  • Idéal pour des produits ou services spécifiques avec un prix défini
  • Exemple : Achat de produit pour exactement 99,99 $
Montant variable (saisie du client)
  • Lorsqu’aucun amount n’est spécifié, les clients peuvent saisir leur propre montant de paiement
  • Parfait pour les dons, les pourboires ou les scénarios de tarification flexibles
  • Les clients voient un champ de saisie de montant sur la page de paiement

4. Traitement du paiement

Les clients accèdent au lien de paiement, examinent les informations pré-remplies et complètent la transaction en utilisant leur stablecoin préférée.

5. Réponse de la transaction

Le paramètre reference de l’URL sera inclus dans la réponse de la transaction et dans les payloads des webhooks, vous permettant de relier les paiements à vos systèmes internes.

Essayez

Découvrez les liens de paiement Blockradar grâce à notre démo en direct : 🔗 Lien de paiement de démonstration : https://pay.blockradar.co/demo Cette démo présente :
  • Flux de paiement : Expérience client complète, du lien à la finalisation
  • UI/UX : Interface de paiement moderne et intuitive
  • Options de stablecoins : Plusieurs méthodes de paiement et réseaux
  • Mises à jour en temps réel : État de la transaction et confirmations en direct
Le lien de paiement de démonstration est destiné aux tests uniquement. Aucune transaction réelle ne sera traitée.

Création de liens de paiement

Lien de paiement de base

Créez un lien de paiement simple pour un montant fixe :
{
  "name": "Product Purchase",
  "description": "Payment for Laptop Pro 2024",
  "amount": "100.00",
  "redirectUrl": "https://store.example.com/thank-you",
  "successMessage": "Thank you for your purchase!",
  "metadata": "{\"product_id\": \"prod_123\", \"order_id\": \"ord_456\"}"
}

Lien de paiement à montant variable

Permettez aux clients de choisir le montant de leur paiement :
{
  "name": "Donation Campaign",
  "description": "Support our disaster relief efforts",
  "redirectUrl": "https://charity.example.com/thank-you",
  "successMessage": "Thank you for your generous donation!",
  "metadata": "{\"campaign\": \"disaster_relief_2024\"}"
}

Lien de paiement avec téléchargement de fichier

Incluez un fichier (par exemple, facture, image de produit) avec votre lien de paiement en utilisant form-data : Champs form-data :
  • name : Service Invoice
  • description : Web development services - January 2024
  • amount : 1500.00
  • redirectUrl : https://company.example.com/payment-success
  • successMessage : Payment received! We’ll start working on your project.
  • metadata : invoice_id: INV-2024-001, service: web_development
  • file : [cover.png] (téléchargement de fichier)
Lorsque vous incluez des téléchargements de fichiers, utilisez form-data au lieu de JSON. Le fichier sera stocké et accessible via le lien de paiement.

Paramètres du lien de paiement

Paramètres requis

ParamètreTypeDescription
namestring (max : 250)Le nom du lien de paiement

Paramètres facultatifs

ParamètreTypeDescription
descriptionstring (max : 250)Une description du lien de paiement
slugstring (max : 250)Un identifiant unique (compatible URL). Doit correspondre à la regex : ^[a-zA-Z0-9-]+$
amountstringLe montant du lien de paiement. Doit être un nombre en string valide > 0
redirectUrlstring (URL)L’URL vers laquelle rediriger l’utilisateur après le paiement. Doit inclure http:// ou https://
successMessagestring (max : 500)Message affiché lorsque le paiement réussit
inactiveMessagestring (max : 500)Message affiché lorsque le lien de paiement est inactif
metadataobject (JSON string)Metadata personnalisée sous forme de paires clé-valeur (string ou nombre). Doit être envoyée comme JSON string en form-data
paymentLimitnumber (min : 1)Nombre maximum de paiements autorisés pour ce lien
filefileTéléchargement de fichier facultatif (par exemple, image ou document) attaché au lien de paiement

Flux de paiement

Expérience client

  1. Cliquer sur le lien de paiement
    • Le client reçoit et clique sur le lien de paiement
    • Le lien ouvre une page de paiement sécurisée
  2. Sélectionner la méthode de paiement
    • Choisir parmi les stablecoins disponibles
    • Sélectionner le réseau blockchain préféré
    • Saisir le montant du paiement (si variable)
  3. Compléter le paiement
    • Le client confirme les détails de la transaction
    • Le paiement est traité sur la blockchain
    • Confirmation et mises à jour de l’état en temps réel
  4. Confirmation de succès
    • Page de confirmation de paiement
    • Redirection facultative vers votre site web
    • Reçu et détails de la transaction

Expérience marchand

  1. Notifications en temps réel
    • Événements webhook pour l’état du paiement
    • Notifications par e-mail (si configurées)
    • Mises à jour du dashboard
  2. Suivi des paiements
    • Historique et état des transactions
    • Analytique et rapports de paiements
    • Intégration à vos systèmes

Cycle de vie de l’adresse

Les adresses de paiement générées pour les liens de checkout ont un cycle de vie limité :
  • Après un paiement réussi : L’adresse est immédiatement désactivée et ne peut plus recevoir de paiements supplémentaires
  • Après 24 heures d’inactivité : Si aucun paiement n’est effectué vers une adresse dans les 24 heures, elle est automatiquement désactivée
Chaque nouvelle session de paiement génère une nouvelle adresse. Cela garantit la sécurité et empêche la réutilisation des adresses.

Événements webhook

Les liens de paiement déclenchent les événements webhook suivants lorsque les paiements sont reçus :
ÉvénementDescription
deposit.successPaiement reçu via le lien de paiement
deposit.failedTentative de paiement échouée

Exemple de payload webhook

{
  "event": "deposit.success",
  "data": {
    "id": "0d7a0b98-943c-48d0-8baa-216c29956050",
    "reference": "bjXPk7d00",
    "senderAddress": "0x451dEFC27B45808078e875556AF06bCFdC697BA4",
    "recipientAddress": "0x9D8dF15628B737CAf63a92Abd8E8bb304210eA94",
    "tokenAddress": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "1",
    "amountPaid": "1",
    "amountUSD": "1",
    "rateUSD": "1",
    "fee": null,
    "feeHash": null,
    "currency": "USD",
    "toCurrency": null,
    "blockNumber": 34771099,
    "blockHash": "0xa9dc060dbe649676a15ae1faee725851fe1ecf2401b200e60fff33fc0ff41e84",
    "hash": "0x9f01af8f517afb3fd3ee17f36dabee03a4d6514885473115815de86c28ea7dfb",
    "confirmations": 6,
    "confirmed": true,
    "gasPrice": "7026436",
    "gasUsed": "62159",
    "gasFee": "0.000000436756235324",
    "status": "SUCCESS",
    "type": "DEPOSIT",
    "note": null,
    "amlScreening": {
      "provider": "ofac, fbi, tether, circle",
      "status": "success",
      "message": "Address is not sanctioned"
    },
    "assetSwept": true,
    "assetSweptAt": "2025-08-27T21:53:22.300Z",
    "assetSweptGasFee": "0.000000489848406004",
    "assetSweptHash": "0xe85efcf15ff8eaa2429aea32515347d65ff8098f22dac567611c258441bde809",
    "assetSweptSenderAddress": "0x9D8dF15628B737CAf63a92Abd8E8bb304210eA94",
    "assetSweptRecipientAddress": "0xb55c054D8eE75224E1033e6eC775B4F62D942b43",
    "assetSweptAmount": "1",
    "reason": "Funds swept successfully",
    "network": "mainnet",
    "chainId": 8453,
    "metadata": {},
    "toAmount": null,
    "signedTransaction": null,
    "rate": null,
    "createdAt": "2025-08-27T21:52:19.839Z",
    "updatedAt": "2025-08-27T21:53:22.303Z",
    "asset": {
      "id": "3a18a31a-86ad-44a0-9b9c-cdb69d535c64",
      "name": "USD Coin",
      "symbol": "USDC",
      "decimals": 6,
      "address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "standard": null,
      "currency": "USD",
      "isActive": true,
      "logoUrl": "https://res.cloudinary.com/blockradar/image/upload/v1716800083/crypto-assets/usd-coin-usdc-logo_fs9mhv.png",
      "network": "mainnet",
      "isNative": false,
      "createdAt": "2024-06-08T12:59:11.303Z",
      "updatedAt": "2025-06-03T11:34:36.288Z"
    },
    "address": {
      "id": "824d8ff9-1ee4-43d1-bec0-c77f25699cd6",
      "address": "0x9D8dF15628B737CAf63a92Abd8E8bb304210eA94",
      "name": null,
      "isActive": true,
      "type": "INTERNAL",
      "derivationPath": "m/44'/60'/0'/0/503",
      "metadata": null,
      "configurations": {
        "aml": {
          "status": "success",
          "message": "Address is not sanctioned",
          "provider": "ofac, fbi, tether, circle"
        }
      },
      "network": "mainnet",
      "createdAt": "2025-08-27T21:52:19.839Z",
      "updatedAt": "2025-08-27T21:52:19.839Z"
    },
    "blockchain": {
      "id": "28a730d3-211b-40f7-bb8f-dd589dcc738e",
      "name": "base",
      "symbol": "eth",
      "slug": "base",
      "derivationPath": "m/44'/60'/0'/0",
      "isEvmCompatible": true,
      "isL2": true,
      "logoUrl": "https://res.cloudinary.com/blockradar/image/upload/v1716800080/crypto-assets/Base_Network_Logo_vqyh7r.png",
      "isActive": true,
      "tokenStandard": null,
      "createdAt": "2024-06-07T11:09:56.586Z",
      "updatedAt": "2025-11-26T15:26:21.825Z"
    },
    "wallet": {
      "id": "6b741fbc-8a9c-48a1-92b0-ae7b52de8b9e",
      "name": "Base Mainnet Wallet",
      "description": "This is base mainnet wallet",
      "address": "0xb55c054D8eE75224E1033e6eC775B4F62D942b43",
      "derivationPath": "m/44'/60'/0'/0/0",
      "isActive": true,
      "status": "ACTIVE",
      "network": "mainnet",
      "configurations": {
        "withdrawal": {
          "gasless": {
            "isActive": true
          }
        },
        "autoSweeping": {
          "isActive": true
        }
      },
      "createdAt": "2024-06-15T02:53:23.409Z",
      "updatedAt": "2025-08-18T23:26:13.469Z",
      "business": {
        "id": "a109729b-3b97-4fb3-a90a-769a0cbf6a25",
        "name": "Blockradar",
        "sector": "infrastructure",
        "userId": "831b739e-ed85-499a-b273-8a1a5b41b7a0",
        "status": "ACTIVE",
        "pipedriveOrganizationId": "308",
        "createdAt": "2023-04-28T17:40:18.541Z",
        "updatedAt": "2025-06-19T23:51:01.019Z"
      }
    },
    "beneficiary": null,
    "paymentLink": {
      "id": "dd8eb830-0971-4f61-97bc-b1ad352e1c48",
      "name": "Blockradar Checkout Demo",
      "description": "Blockradar payment links simplify stablecoin transactions into a clean, intuitive experience. This demo shows how users can pay securely using stablecoins with just a few clicks, fast, transparent, and onchain.",
      "slug": "demo",
      "amount": null,
      "currency": "USD",
      "imageUrl": "https://res.cloudinary.com/blockradar/image/upload/v1752049884/payment-links/ndlbgyb5wg70bpr3p1uu.png",
      "redirectUrl": null,
      "successMessage": null,
      "active": true,
      "inactiveMessage": null,
      "network": "mainnet",
      "type": "payment",
      "createdChannel": "dashboard",
      "metadata": {},
      "configurations": {},
      "createdAt": "2024-06-20T05:38:13.863Z",
      "updatedAt": "2025-07-09T08:31:25.328Z"
    },
    "toAsset": null,
    "toBlockchain": null,
    "toWallet": null
  }
}

Champs clés des données webhook

Le payload du webhook inclut des informations complètes sur le paiement :
ChampDescription
referenceRéférence personnalisée des paramètres de query de l’URL (par exemple, ORDER123, ID client)
paymentLinkDétails complets du lien de paiement, y compris le nom, la description et la metadata
assetInformations sur l’actif (USDC, USDT, etc.) avec les détails du réseau
blockchainInformations sur le réseau (Base, Ethereum, etc.)
walletDétails et configurations de la master wallet
addressAdresse du client ayant reçu le paiement
amlScreeningRésultats du screening anti-blanchiment d’argent
assetSweptÉtat et détails de l’auto-sweep
metadataDonnées personnalisées du lien de paiement
Le champ reference dans les payloads webhook correspond au paramètre de query reference que vous incluez dans l’URL de paiement. Cela vous permet de relier les paiements à des commandes, des clients ou des références internes spécifiques de votre système.

Bonnes pratiques

Sécurité

  • Utilisez HTTPS pour le partage de tous les liens de paiement
  • Surveillez les événements webhook pour détecter toute activité suspecte
  • Mettez en œuvre le rate limiting sur vos endpoints webhook

Expérience utilisateur

  • Descriptions claires de l’objet du paiement
  • Pages de paiement optimisées pour mobile
  • Plusieurs options de paiement lorsque possible

Intégration

  • Stockez les IDs des liens de paiement pour le suivi
  • Utilisez la metadata pour relier les paiements à vos systèmes
  • Mettez en œuvre une logique de retry des webhooks pour la fiabilité
  • Testez les webhooks d’abord en environnement sandbox

Cas d’usage et exemples

Boutique e-commerce

{
  "name": "Laptop Pro 2024",
  "description": "High-performance laptop with latest specifications",
  "amount": "299.99",
  "redirectUrl": "https://store.example.com/thank-you",
  "successMessage": "Thank you for your purchase! Your order has been confirmed.",
  "metadata": "{\"product_id\": \"laptop_pro_2024\", \"category\": \"electronics\", \"customer_email\": \"[email protected]\"}",
  "paymentLimit": 1
}

Facture de service

{
  "name": "Web Development Services",
  "description": "Professional web development services - January 2024",
  "amount": "1500.00",
  "redirectUrl": "https://company.example.com/payment-success",
  "successMessage": "Payment received! We'll start working on your project immediately.",
  "metadata": "{\"invoice_id\": \"INV-2024-001\", \"service\": \"web_development\", \"client_id\": \"client_789\"}",
  "paymentLimit": 1
}

Campagne de dons

{
  "name": "Disaster Relief 2024",
  "description": "Support our disaster relief efforts in affected regions",
  "amount": "10.00",
  "redirectUrl": "https://charity.example.com/thank-you",
  "successMessage": "Thank you for your generous donation! Every contribution makes a difference.",
  "metadata": "{\"campaign\": \"disaster_relief_2024\", \"organization\": \"charity_foundation\", \"tax_deductible\": true}",
  "paymentLimit": 1000
}

Service par abonnement

{
  "name": "Premium Plan Monthly",
  "description": "Monthly subscription to our premium service",
  "amount": "29.99",
  "redirectUrl": "https://service.example.com/welcome",
  "successMessage": "Welcome to Premium! Your subscription is now active.",
  "metadata": "{\"plan\": \"premium_monthly\", \"billing_cycle\": \"monthly\", \"features\": \"unlimited_access\"}",
  "paymentLimit": 100
}
Ces exemples utilisent les paramètres corrects de l’API payment links de Blockradar. Le champ metadata doit être envoyé comme JSON string en form-data, et les téléchargements de file sont pris en charge pour du contenu supplémentaire.

Tests et développement

Environnement sandbox

  • Utilisez les réseaux testnet pour le développement
  • Testez la livraison et le traitement des webhooks
  • Vérifiez les flux de paiement de bout en bout
  • Testez les cas limites et les scénarios d’erreur

Tests de webhook

  • Utilisez des outils tels que webhook.site pour les tests
  • Vérifiez la validation des signatures
  • Testez les mécanismes de retry
  • Surveillez les taux de livraison des webhooks

Plan Checkout

Blockradar Checkout est une couche de paiement programmable en stablecoins pour accepter des paiements onchain via liens, QR codes intégrés et WalletConnect. Les fonds sont réglés directement sur vos wallets non-custodial avec un support intégré pour le swap, le bridge et le routage de trésorerie.

Tarification

0,75 % par transaction

Tarification simple et transparente, sans frais d’abonnement mensuel.

Stablecoins prises en charge

  • USDC, USDT, cNGN, IDRX, EUROC, et plus

Support multi-chain

  • Ethereum, Polygon, Base, Solana, Tron, Celo, et plus

Gestion de trésorerie

  • Swap et Bridge : Convertissez et déplacez des actifs entre les chaînes
  • Auto-règlement : Réglez automatiquement dans votre devise préférée
  • Circle Gateway : Accédez au protocole de transfert cross-chain de Circle
  • Auto-sweeping : Consolidez les fonds vers votre master wallet
Ce plan n’inclut pas les fonctionnalités Wallet-as-a-Service (WaaS) ni le provisionnement de wallets dédiées pour vos utilisateurs finaux.

Récupération des transactions d’un lien de paiement

Vous pouvez récupérer toutes les transactions associées à un lien de paiement spécifique en utilisant l’endpoint dédié aux transactions. Cela est utile pour :
  • Suivi des paiements : Surveiller tous les paiements reçus via un lien spécifique
  • Rapprochement : Faire correspondre les paiements aux commandes ou aux factures
  • Reporting : Générer des rapports pour des liens de paiement spécifiques

Paramètres de query

ParamètreTypeDescription
pagenumberNuméro de page pour la pagination (par défaut : 1)
limitnumberNombre de résultats par page (par défaut : 10)
statusstringFiltrer par état de transaction (par exemple, SUCCESS, PENDING, FAILED)
typestringFiltrer par type de transaction (par exemple, DEPOSIT)
orderstringOrdre de tri (ASC ou DESC)

Exemple de réponse

{
  "status": true,
  "message": "Transactions fetched successfully",
  "data": [
    {
      "id": "0d7a0b98-943c-48d0-8baa-216c29956050",
      "reference": "bjXPk7d00",
      "amount": "100.00",
      "amountUSD": "100.00",
      "status": "SUCCESS",
      "type": "DEPOSIT",
      "createdAt": "2025-01-15T10:30:00.000Z",
      "asset": {
        "symbol": "USDC",
        "name": "USD Coin"
      },
      "blockchain": {
        "name": "base",
        "slug": "base"
      },
      "customer": {
        "email": "[email protected]",
        "name": "John Doe"
      }
    }
  ],
  "meta": {
    "page": 1,
    "limit": 10,
    "total": 25,
    "totalPages": 3
  }
}

Support et ressources

Référence API

Obtenir de l’aide

Checkout et les liens de paiement constituent un moyen puissant d’accepter des paiements en stablecoins avec un effort d’intégration minimal. Commencez par des cas d’usage simples et ajoutez de la complexité progressivement, à mesure que vous vous familiarisez avec le système.