POST
/api/v1/payments/linksClé APICréer un lien de paiement
Génère un lien réutilisable ou à usage unique pointant vers le checkout hébergé.
Corps de requête
| Nom | Type | Requis | Description |
|---|---|---|---|
| amount | string | Oui | Montant |
| currency | string | Oui | Devise |
| description | string | — | Libellé |
| slug | string | — | Slug personnalisé (optionnel) |
| reusable | boolean | — | Lien réutilisable |
| maxUses | number | — | Nombre max d'utilisations |
| allowedMethods | string[] | — | Méthodes autorisées |
| successUrl | string | — | URL de succès |
| cancelUrl | string | — | URL d'annulation |
Exemple requête
json
{
"amount": "1000",
"currency": "USD",
"description": "Facture #42",
"reusable": false,
"allowedMethods": [
"MOBILE_MONEY",
"CARD"
]
}Réponse (data)
| Nom | Type | Requis | Description |
|---|---|---|---|
| object | string | Oui | Toujours payment_link |
| id | string | Oui | Identifiant template |
| slug | string | Oui | Slug URL du lien |
| url | string | Oui | URL publique du lien |
| linkStatus | string | Oui | ACTIVE, EXPIRED, CANCELLED, etc. |
| usesCount | number | Oui | Nombre d'utilisations réussies |
| maxUses | number | null | — | Plafond d'utilisations |
| title | string | null | — | Titre affiché au payeur |
| description | string | null | — | Description complémentaire |
| reusable | boolean | — | Lien réutilisable |
| allowedMethods | string[] | — | Méthodes de paiement autorisées |
| successUrl | string | null | — | URL de redirection après succès |
| cancelUrl | string | null | — | URL de redirection après annulation |
Exemple réponse
json
{
"success": true,
"data": {
"object": "payment_link",
"id": "cs_link_template_001",
"reference": "summer-sale",
"slug": "summer-sale",
"url": "https://checkout.example/link/summer-sale",
"amount": "5000",
"currency": "CDF",
"title": "Soldes d'été",
"description": "Facture #42",
"status": "OPEN",
"linkStatus": "ACTIVE",
"usesCount": 3,
"maxUses": 100,
"reusable": true,
"allowedMethods": [
"MOBILE_MONEY",
"CARD"
],
"successUrl": "https://merchant.example/thanks",
"cancelUrl": null,
"expiresAt": "2026-12-31T23:59:59.000Z",
"createdAt": "2026-08-01T08:00:00.000Z"
},
"error": null
}Erreurs
- PAYMENT_LINK_SLUG_TAKEN (409) — Le slug est déjà utilisé
Exemples
bash
curl -X POST https://api.dev.izzi-finance.com/api/v1/api/v1/payments/links \
-H "Authorization: Bearer izzi_mk_sandbox_…" \
-H "Idempotency-Key: charge-order-1234-unique" \
-H "Content-Type: application/json" \
-d '{
"amount": "1000",
"currency": "USD",
"description": "Facture #42",
"reusable": false,
"allowedMethods": [
"MOBILE_MONEY",
"CARD"
]
}'