Comprendre le champ end_date d'un abonnement
Prérequis
Section intitulée « Prérequis »- Connaissance du cycle de vie d’un abonnement Ciklik
- Accès à l’API Ciklik
- Familiarité avec les concepts de rebill
Voir aussi : Gestion des abonnements (documentation plateforme)
Définition
Section intitulée « Définition »Le champ end_date représente la date d’expiration de l’abonnement suite au dernier paiement accepté.
Fonctionnement du cycle
Section intitulée « Fonctionnement du cycle »Prenons l’exemple d’un abonnement mensuel :
Souscription : 15 janvier├── Paiement accepté le 15 janvier├── end_date = 14 février (veille du prochain rebill)├── Prochain rebill prévu : 15 février│Rebill du 15 février├── Si paiement accepté → end_date = 14 mars├── Si paiement refusé → end_date reste au 14 févrierRègle de mise à jour
Section intitulée « Règle de mise à jour »- Paiement accepté :
end_dateest mise à jour à la veille du prochain rebill prévu - Paiement refusé :
end_datene bouge pas
Statut actif vs end_date passée
Section intitulée « Statut actif vs end_date passée »Un abonnement peut être :
- Statut actif + end_date dans le futur = Abonnement en cours, à jour de paiement
- Statut actif + end_date dans le passé = Abonnement “zombie” - actif mais jamais renouvelé avec succès
Les abonnements “zombies”
Section intitulée « Les abonnements “zombies” »Ce sont des abonnements qui :
- Ont le statut
activedans Ciklik - Mais dont la
end_dateest dans le passé (parfois depuis plusieurs mois)
Causes possibles :
- Échecs de paiement répétés (carte expirée, fonds insuffisants)
- Erreurs de stock empêchant le renouvellement
- Problèmes techniques (site PrestaShop inaccessible)
Cas d’usage pour le filtrage API
Section intitulée « Cas d’usage pour le filtrage API »Identifier les abonnements “bloqués”
Section intitulée « Identifier les abonnements “bloqués” »Pour trouver les abonnements actifs qui n’ont pas été renouvelés depuis longtemps :
GET /api/subscriptions?filter[status]=active&filter[end_date_before]=2025-01-01Cela retourne les abonnements marqués comme actifs mais dont la dernière facturation réussie remonte à avant janvier 2025.
Audit mensuel des abonnements
Section intitulée « Audit mensuel des abonnements »Pour identifier les abonnements nécessitant une attention :
# Abonnements actifs avec end_date dépassée depuis plus de 30 joursGET /api/subscriptions?filter[status]=active&filter[end_date_before]=2026-01-04Lien avec les groupes clients PrestaShop
Section intitulée « Lien avec les groupes clients PrestaShop »Le champ end_date est particulièrement utile pour les intégrateurs qui synchronisent l’état des abonnements Ciklik avec des groupes clients PrestaShop.
Scénario typique
Section intitulée « Scénario typique »Vous avez un groupe client “Abonnés Premium” dans PrestaShop qui donne accès à des prix réduits ou des fonctionnalités exclusives.
Logique recommandée :
Si abonnement.status == "active" ET abonnement.end_date >= aujourd'hui → Client reste dans le groupe "Abonnés Premium"
Si abonnement.status == "active" ET abonnement.end_date < aujourd'hui - 30 jours → Considérer le retrait du groupe (abonnement probablement en difficulté)
Si abonnement.status == "inactive" → Retirer du groupe "Abonnés Premium"Voir aussi : Gérer ses abonnés dans un groupe client PrestaShop
Différence avec next_payment_date
Section intitulée « Différence avec next_payment_date »| Champ | Signification |
|---|---|
end_date | Jusqu’à quelle date l’abonnement est payé |
next_payment_date | Quand aura lieu la prochaine tentative de prélèvement |
Exemple :
end_date= 14 février (dernier paiement couvrait jusqu’à cette date)next_payment_date= 15 février (prochain prélèvement prévu)
Si le paiement du 15 février échoue :
end_datereste au 14 févriernext_payment_datepasse au 18 février (prochaine tentative selon le scénario de rebill)
Q : Un abonnement avec end_date passée va-t-il continuer à essayer de se renouveler ?
Oui, tant que l’abonnement a le statut active, les tentatives de renouvellement continueront selon le scénario de rebill configuré.
Q : Comment forcer la mise à jour de end_date sans paiement ?
Ce n’est pas possible via l’interface standard. Le champ end_date est uniquement mis à jour lors d’un paiement réussi. Pour des cas exceptionnels, contactez le support Ciklik.
Q : Si je résilie puis réactive un abonnement, que devient end_date ?
- Si réactivation pendant la période payée :
end_datene change pas - Si réactivation après
end_date: un paiement est déclenché immédiatement, etend_dateest mise à jour si le paiement réussit