7 endpoints
Abonnements
Un lien de paiement envoyé par e-mail à chaque échéance, avec ses rappels, ses pauses et son historique.
Les intitulés et descriptions d'endpoints viennent du contrat OpenAPI, en anglais — ils ne peuvent pas diverger de l'API.
Votre clé de test se crée depuis le portail, dès l’activation de votre compte.
En clair
Envoyer au même client un lien de paiement à intervalle régulier.
Quand l'utiliser
Pour tout revenu récurrent : abonnement mensuel, forfait, mensualisation d'une prestation.
Comment l'intégrer
- 1Créez l'abonnement pour un client existant — avec un e-mail valide : c'est là que part chaque échéance —, sa périodicité et son montant.
- 2À chaque échéance, ChariPay génère un lien de paiement à usage unique et l'envoie au client ; le premier paiement fait passer l'abonnement de
INCOMPLETEàACTIVE. - 3Tant qu'une échéance est impayée, un rappel part chaque jour et aucune nouvelle période ne s'ouvre ; le lien reste payable 14 jours après l'échéance, puis l'abonnement est annulé — suivez
subscription.payment_succeeded,subscription.payment_failedetsubscription.canceled. - 4Suspendez, reprenez ou résiliez selon la vie du contrat ; consultez les échéances pour votre facturation.
- 5En sandbox, une date de début au jour même ouvre la première échéance immédiatement ; une périodicité
DAILYfait venir la suivante dès le lendemain.
- POST
/v1/subscriptions/{reference}/resumeReprendre un abonnement - POST
/v1/subscriptions/{reference}/pauseMettre un abonnement en pause - POST
/v1/subscriptions/{reference}/cancelAnnuler un abonnement - GET
/v1/subscriptionsLister les abonnements - POST
/v1/subscriptionsCréer un abonnement - GET
/v1/subscriptions/{reference}/chargesLister les échéances d'un abonnement - GET
/v1/subscriptions/{reference}Récupérer un abonnement
Reprendre un abonnement
Reprend le cycle de facturation d'un abonnement mis en pause. Les périodes écoulées pendant la pause ne sont pas facturées rétroactivement.
| Champ | Type | Emplacement | Requis | Description |
|---|---|---|---|---|
reference | string | path | Requis |
Mettre un abonnement en pause
Suspend l'abonnement : aucune nouvelle période n'est ouverte et aucun lien de paiement n'est envoyé jusqu'à /resume.
| Champ | Type | Emplacement | Requis | Description |
|---|---|---|---|---|
reference | string | path | Requis |
Annuler un abonnement
Met fin définitivement à l'abonnement. Aucun autre lien de paiement n'est généré.
| Champ | Type | Emplacement | Requis | Description |
|---|---|---|---|---|
reference | string | path | Requis |
Lister les abonnements
Renvoie les abonnements de l'appelant pour l'environnement de la clé, sous forme de Page paginée.
| Champ | Type | Emplacement | Requis | Description |
|---|---|---|---|---|
origin | enum | query | Optionnel | Filtrer par origine de création (API ou DASHBOARD).Valeurs APIDASHBOARD |
pageable | Pageable | query | Requis |
Créer un abonnement
Démarre un abonnement pour un client existant ; le statut renvoyé reste INCOMPLETE jusqu'au paiement de la première période. À chaque échéance, un lien de paiement à usage unique est généré pour la période et envoyé par e-mail au client, qui le règle sur le checkout hébergé avec 3DS. Tant qu'une période reste impayée, un rappel est envoyé chaque jour par e-mail et aucune période suivante n'est ouverte ; un lien resté impayé 14 jours après son échéance annule l'abonnement. Si la date de début est aujourd'hui ou antérieure, la première échéance est ouverte immédiatement et renvoyée dans currentCharge. Fournissez un externalId optionnel propre au client (unique par marchand) pour rendre la création idempotente : un externalId en double renvoie l'abonnement existant avec 200 OK.
Schéma · CreateSubscriptionRequest
| Champ | Type | Emplacement | Requis | Description |
|---|---|---|---|---|
clientId | string (uuid) | body | Requis | UUID du client à facturer (créez-le d'abord via /v1/clients). Le client doit avoir une adresse e-mail : le lien de paiement de chaque période y est envoyé. |
amount | number | body | Requis | Montant du lien de paiement de chaque période, en unités principales de MAD. |
description | string | body | Requis | Description affichée sur chaque lien de paiement généré. |
frequency | enum | body | Requis | Périodicité de facturation.Valeurs DAILYWEEKLYMONTHLYYEARLY |
startDate | string (date) | body | Requis | Date de la première période de facturation (YYYY-MM-DD). |
endDate | string (date) | body | Optionnel | Date de fin facultative ; sans limite si omise. |
channels | array of enum | body | Requis | Canaux utilisés pour envoyer au client le lien de paiement de chaque période. EMAIL est le canal pris en charge. |
externalId | string | body | Optionnel | Votre identifiant d'abonnement, unique par marchand et par environnement. Créer un abonnement avec un externalId déjà existant renvoie l'abonnement existant. Il est renvoyé tel quel dans ExternalId de chaque webhook de paiement d'abonnement, à des fins de rapprochement. |
metadata | object | body | Optionnel | Attributs de rapprochement facultatifs, propres au marchand (4 Ko maximum une fois sérialisés), renvoyés tels quels dans metadata à chaque webhook de paiement d'abonnement. Utilisez des identifiants opaques comme customerId ou contractId ; n'y incluez ni données de carte, ni CVV, ni identifiants de connexion, ni données personnelles superflues. |
Lister les échéances d'un abonnement
Renvoie toutes les échéances générées par l'abonnement (un lien de paiement à usage unique par période de facturation), période la plus récente en premier.
| Champ | Type | Emplacement | Requis | Description |
|---|---|---|---|---|
reference | string | path | Requis |
Récupérer un abonnement
Récupère un abonnement avec son état dans le cycle de vie et son échéance ouverte : le lien de paiement de la période en cours, s'il y en a un.
| Champ | Type | Emplacement | Requis | Description |
|---|---|---|---|---|
reference | string | path | Requis | Référence de l'abonnement. |
Faites votre premier appel en mode test
Créez votre compte, générez votre clé de test depuis le portail et lancez votre première requête aujourd'hui — ou parlez à un intégrateur.
- Gratuit, sans engagement
- Mode test dès l'inscription
- Aucune validation à attendre