PAY LINK · v1.0

Liens de paiement

Créez un lien de paiement en une seule requête API et partagez-le par SMS, WhatsApp ou email. Aucun code à intégrer côté client.

Introduction

Un lien de paiement est une URL unique que vous créez depuis l'API ou le dashboard. Vous la partagez avec votre client — il clique, choisit son opérateur et paie sur la page BluePay. Vous recevez une notification webhook dès la confirmation.

01Vous créez le lienPOST /api/v1/links
02Vous partagezSMS · WhatsApp · Email
03Le client paiePage BluePay hébergée
04Vous êtes notifiéWebhook IPN signé

Cas d'usage typiques : Factures à distance · Paiement de droits d'inscription · Collecte de fonds · Commerce sur WhatsApp

Créer un lien de paiement

POST/api/v1/payment-links
ChampTypeRequisDescription
amountintegerOuiMontant en centimes XOF. Si absent le client saisit lui-même.
descriptionstringNonLibellé affiché sur la page de paiement.
expiresAtstringNonDate d'expiration ISO 8601. Ex : "2026-07-31T23:59:59Z"
maxUsesintegerNonNombre maximum de paiements via ce lien. Défaut : illimité.
metadataobjectNonDonnées libres retournées dans chaque webhook.
JavaScript
const res = await fetch('https://bluepay.myfad.org/api/v1/payment-links', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer bluepay_live_votre_cle',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    amount: 75000,               // 750 XOF
    description: 'Frais de dossier — Concours Master 2026',
    expiresAt: '2026-07-31T23:59:59Z',
    maxUses: 500,
    metadata: { promotion: 'master-2026' },
  }),
});

const { url, id } = await res.json();
// url = "https://bluepay.myfad.org/pay/link_abc123..."
console.log('Lien :', url);
JSON (réponse)
{
  "id": "link_abc123def456",
  "url": "https://bluepay.myfad.org/pay/link_abc123def456",
  "amount": 75000,
  "currency": "XOF",
  "description": "Frais de dossier — Concours Master 2026",
  "status": "ACTIVE",
  "usedCount": 0,
  "maxUses": 500,
  "expiresAt": "2026-07-31T23:59:59.000Z",
  "createdAt": "2026-06-30T10:00:00.000Z"
}

Partager le lien

Une fois le lien créé, partagez l'URL retournée comme bon vous semble. Le client cliquera sur la page de paiement BluePay directement.

Exemple SMS (Node.js)
// Envoi via votre provider SMS habituel
const linkUrl = 'https://bluepay.myfad.org/pay/link_abc123def456';

await smsProvider.send({
  to: '+221771234567',
  text: `Bonjour, veuillez régler vos frais de dossier via ce lien sécurisé BluePay : ${linkUrl}`,
});
Exemple WhatsApp
// Via l'API WhatsApp Business
const message = {
  type: 'template',
  template: {
    name: 'payment_reminder',
    components: [
      { type: 'body', parameters: [{ type: 'text', text: linkUrl }] }
    ],
  },
};

Notifications de paiement

Chaque paiement via un lien déclenche un webhook identique à celui de l'API de paiement. Le champ metadata contient vos données personnalisées.

JSON (webhook reçu)
{
  "event": "payment.success",
  "data": {
    "id": "clxyz5678efgh",
    "status": "SUCCESS",
    "amount": 75000,
    "currency": "XOF",
    "channel": "WAVE",
    "paymentLinkId": "link_abc123def456",
    "metadata": { "promotion": "master-2026" },
    "createdAt": "2026-06-30T12:00:00.000Z"
  }
}

Gérer les liens

MéthodeEndpointAction
GET/api/v1/payment-linksLister tous vos liens
GET/api/v1/payment-links/:idDétail et statistiques d'un lien
PATCH/api/v1/payment-links/:idModifier montant, description, expiration
DELETE/api/v1/payment-links/:idDésactiver un lien (ne supprime pas l'historique)

Essayer les liens de paiement

Créez votre premier lien depuis le dashboard en 30 secondes.