• First Subscription Installment: Strongly authenticated transaction in 3DSV2 (SCA) without exemption request
  • Linking subsequent installments to the first subscription installment




  • Fixed amount and frequency Subscription for a defined duration
  • Variable Amount and/or Frequency Subscription (CIT/MIT)




Description


This section explains how to implement card subscriptions that comply with PSD2 regulations on Axepta Online for CB, VISA, and Mastercard cards.

Axepta Online supports two types of subscriptions:

  1. Fixed Amount and Frequency Subscription for a defined duration: The amount, frequency, and duration are known at the time of subscription

  2. Variable Subscription (CIT/MIT): For cases where the amount, frequency or duration are not known at the time of subscription (tacit renewal)

The subscription type must be determined at the time of enrollment and cannot be changed during the subscription period.

If you wish to switch from a fixed-duration subscription to a variable subscription, you will need to re-enroll your customer (new CIT - Customer Initiated Transaction - with 3DS authentication).



Prérequis


  • Vous souhaitez l'abonnement / paiement récurrent par carte (CB, Visa, Mastercard) :
    • Définir quel type d'abonnement vous allez proposer à vos clients (cf. ci-dessous)
    • Recueillir le consentement de votre client pour la souscription d'un nouvel abonnement (côté marchand)
    • Stocker les données suivantes
      • L'objet JSON Card contenant : le numéro de carte tokenisé, la marque de la carte et la date d'expiration
      • Le schemeReferenceID reçu en réponse de la transaction d'initialisation de l'abonnement


Premier paiement.

L'information de la demande de paiement récurrent est passé par l'object json "credentialOnFile"


Exemple, d'une demande de paiement récurrent avec un débit d'un montant fixe, tous les jours, commençant le 07 nov et finissant le 20 nov.

{
	......

	"credentialOnFile" : {
        "type" : "RECURRING",
        "initialPayment": true,
        "recurring" : {
        	"useCase" : "FIXED",
        	"frequency" : "DAILY",
        	"startDate" : "2025-11-07",
        	"expiryDate" : "2025-11-20"
		}
    },

	......

}


Une fois ce premier paiement accepté, les données nécessaire aux paiement successifs sont disponibles dans la réponse à la requête de demande de statut de la transaction

(lien vers la doc swagger de l'api: Retrieve payment details by Payment ID ou Retrieve payment details by Transaction ID)

Les données à sauvegarder sont:

  • Le numéro de carte tokenisé: le parametre: 'pseudoCardNumber'
  • Le scheme Reference Id: le paramètre: 'schemeReferenceId'


Elles doivent être présentées lors de demande suivantes:

exemple: Suite à la demande précédente de paiement récurrent, un des paiement journalier :

{
	......

	"credentialOnFile": {
		"type" : "RECURRING",
        "initialPayment": false,
        "recurring" : {
        	"useCase" : "FIXED",
	        "frequency" : "DAILY",
	        "startDate" : "2025-11-07",
	        "expiryDate" : "2025-11-20"
		}
    },

    "paymentMethods": {
		"integrationType": "HOSTED",
        "type" : "Card",
        "card" : {
			"brandSelection": "MERCHANT", // "CUSTOMER" ou "MERCHANT"
            "prefillInfo": {
                "number": "0701953701953810",  // {{PCnrForStoredCredentials}}
                "securityCode": "123",
                "expiryDate": "203003",
                "cardHolderName": "{{firstName}} {{lastName}}",
                "brand" : "VISA"
            },
            "schemeReferenceId" : "1123456"
		}
	}

	......

}


Mise en place d'un abonnement


La mise en place d'un abonnement s'effectue en 2 étapes :

  1. Enrôlement du client : Initialisation de l'abonnement lors de la 1ère échéance
    1. La 1ère transaction, initiée par le client, sera authentifiée en 3DSV2. On parlera alors de CIT ou Customer Initiated transaction.
    2. Cette transaction ne pourra pas bénéficier d'une demande d'exemption de l'authentification 3DS.
    3. Une valeur de chaînage sera envoyée dans la réponse de cette transaction. Elle sera stockée par le marchand et utilisée dans toutes les échéances suivantes de l'abonnement (cf. schéma ci-dessous).
  2. Echéances suivantes de l'abonnement
    1. Les requêtes de paiement suivantes seront initiéées par le marchand. On parlera de MIT ou Merchant Initiated transaction.
    2. Elles contiendront la valeur de chaînage reçue en réponse de la transaction d'initialisation de l'abonnement.


Mise en place d'un abonnement


Focus : Chaînage des transactions


Une donnée clé

La 1ère échéance d'un abonnement permet de récupérer une donnée de chaînage qui sera utilisée pour relier ("chaîner") les échéances suivantes à cette 1ère échéance.

La donnée de chaînage, reçue en réponse de l'échéance d'initialisation de l'abonnement, est générée soit par la banque du porteur soit par le scheme utilisé (Visa, Mastercard).

Dans la documentation Axepta Online, la donnée de chaînage est renseignée dans le paramètre schemeReferenceID.


Principes

Chaînage des transactions d'un abonnement


Implémentation de l'abonnement


Abonnement d'un montant et d'une périodicité fixes sur une durée définie


Exemple

Le client s’abonne à un gymnase pour 1 an au prix de 34,99 € par mois

  • Mois 1 : L’acheteur effectue le paiement du premier mois en ligne (CIT)
  • Mois 2 à 12 : Les mois suivants, le commerçant effectue des transactions à 34,99 € (MIT)


1. Enrôlement du client : Initialisation de l'abonnement lors de la 1ère échéance

 

La création de la première échéance d'un abonnement est effectuée au cours d'un parcours de paiement via :

  • La page de paiement
  • Le formulaire de carte hébergé par BNP Paribas

  • Un formulaire de carte hébergé par le marchand - uniquement si le marchand est certifié PCI-DSS

 

L’authentification 3D Secure est obligatoire pour la première échéance initiée par le client (CIT)


2. Échéances suivantes de l'abonnement


Les échéances suivantes d'un abonnement sont initiées par le marchand via :


Les échéances suivantes ne sont pas soumises à l’authentification 3D Secure car elles sont initiées par le marchand (MIT)



Seule la donnée reçue dans le schemeReferenceID de la réponse de la requête d'initialisation de l'abonnement doit être stockée et réutilisée dans toutes les échéances suivantes de l'abonnement (paiement récurrent).

Selon les émetteurs, le champ schemeReferenceID peut être valorisé dans la réponse d'une échéance, mais la donnée reçue ne doit pas être réutilisée.





Abonnement d'un montant et/ou d'une périodicité variable - CIT / MIT




L'abonnement variable correspond à un abonnement dont le montant varie au cours de l'abonnement et / ou dont la durée n'est pas connue lors de la souscription.

Exemples

Le client s’abonne à un service avec un forfait et des consommations mensuelles

  • Mois 1 : L’acheteur effectue le paiement du premier mois en ligne (CIT) pour une somme de 50 euros
  • Mois n+1 : Le commerçant effectue une transaction à 12,99 € (MIT)
  • Mois n+2 : Le commerçant effectue une transaction à 35,99 € (MIT)...



Ou le client s'abonne à un service avec tacite reconduction mensuelle :

  • Mois 1 : L’acheteur effectue le paiement du premier mois en ligne (CIT) pour une somme de 50 euros
  • Mois n+1 : Le commerçant effectue une transaction à 50 € (MIT)
  • Mois n+2 : Le commerçant effectue une transaction à 50 € (MIT) ...



1. Enrôlement du client : Initialisation de l'abonnement lors de la 1ère échéance


La création de la première échéance d'un abonnement est effectuée au cours d'un parcours de paiement via :

  • La page de paiement
  • Le formulaire de carte hébergé par BNP Paribas

  • Un formulaire de carte hébergé par le marchand - uniquement si le marchand est certifié PCI-DSS

 

L’authentification avec le 3D Secure est obligatoire pour la première échéance initiée par le client (CIT)


2. Échéances suivantes de l'abonnement


Les échéances suivantes d'un abonnement sont initiées par le marchand via :


Les échéances suivantes ne sont pas soumises à l’authentification avec le 3D Secure car elles sont initiées par le marchand (MIT)



Seule la donnée reçue dans le schemeReferenceID de la réponse de la requête d'initialisation de l'abonnement doit être stockée et réutilisée dans toutes les échéances suivantes de l'abonnement (paiement récurrent).

Selon les émetteurs, le champ schemeReferenceID peut être valorisé dans la réponse d'une échéance, mais la donnée reçue ne doit pas être réutilisée.




Abonnement avec des cartes AMEX


Les abonnements par carte, conformes à la DSP2, sur Axepta Online pour les cartes AMEX nécessite l'usage du paramètre TransactionID à la place du paramètre schemeReferenceID (requête et réponse).