payone
S'inscrire

SEPA Direct Debit

SEPA Direct Debit

Introduction

Ce produit est en mode pilote. Contactez-nous pour devenir un pilote.

Le prélèvement SEPA (SDD) est le système de prélèvement pour les pays SEPA.

Le SDD vous permet de débiter directement un montant sur les comptes bancaires de vos clients. Un mandat SEPA signé par votre client vous autorise à débiter ce montant (ou des montants subséquents à l'avenir pour Card On File transactions).

Aperçu

Groupe de paiement :
Identifiant du moyen de paiement:
771
Avantages clés
  • Traitement des transactions économique en intégrant la création de mandat SEPA dans le flux de paiement.
  • Paiements sécurisés avec une période de contestation limitée (8 semaines au lieu de 13 mois) pour les mandats valides. Utiliser notre solution CreditorID diminue encore plus le risque de rétrofacturation/fraude. Contactez-nous si vous souhaitez vous inscrire à ce service.
  • Idéal pour les paiements récurrents (c'est-à-dire abonnements, services à la demande, services pay-as-you-use) ou comme alternative aux cartes de crédit en divisant des montants importants en versements individuels.
  • Méthode de paiement populaire en Europe pour les transactions de prélèvement automatique.

Pays & devises

Pays pris en charge

Devises prises en charge

  • Euro (EUR)

Intégration

Nous proposons cette méthode de paiement pour les modes d'intégration suivants. Apprenez dans nos guides dédiés leurs différences individuelles :

Trouvez un aperçu général dans le chapitre "Cinématique".

Cette méthode de paiement vous permet de répondre à divers cas d'utilisation. En fonction du méthode d'intégration et du cas d'utilisation, des différences s'appliquent. Consultez cette matrice pour savoir exactement ce qui est le plus adapté à vos besoins :

Je veux que mes clients remplissent le mandat....
Sur notre plateforme Dans ma boutique en ligne
Je traiterai la première transaction.... Juste après la création du mandat CreateHostedCheckout avec
création de mandat
CreatePayment avec création de mandat
Plus tard CreateHostedCheckout avec mandat
création pour une transaction à 0 montant
+ Créer un paiement
Créer un mandat + Créer un paiement

Si vous souhaitez traiter une transaction avec un mandat existant, appliquez le flux Server-to-server avec mandat existant.

Hosted Checkout Page with mandate creation

Add the following properties to a standard CreateHostedCheckout request:

{
"hostedCheckoutSpecificInput":{
"returnUrl":"https://yourReturnUrl.com",
"locale":"en_GB",
"paymentProductFilters":{
"restrictTo":{
"products":[
771
]
}
}
},
"order":{
"amountOfMoney":{
"amount":1000,
"currencyCode":"EUR"
}
},
"sepaDirectDebitPaymentMethodSpecificInput":{
"paymentProduct771SpecificInput":{
"mandate":{
"customerReference":"CustomerRef_{{TIMESTAMP}}",
"recurrenceType":"RECURRING",
"signatureType":"UNSIGNED"
}
}
}
}
Properties Remarks

hostedCheckoutSpecificInput
     returnURL
     locale

paymentProductFilters.restrictTo.products

returnURL: The URL we redirect your customers to after the payment has been finalised.

locale: The language version of our Hosted Checkout Page, including the SEPA mandate form.


paymentProductFilters.restrictTo.products: The numeric identifier of the payment method on our platform. Find this id in the "Aperçu" chapter. It instructs our platform to send your customers directly to the SEPA-branded version of our Hosted Checkout Page. If omitted, our platform sends your customers to the Hosted Checkout Page instead, allowing them to choose this or any other payment method that is active in your account.

order.amountOfMoney
     amount
     currencyCode

Amount: The gross amount you want to charge for this order. If you want to create the mandate first and process the transaction later, set the value to "0"
CurrencyCode: The ISO 4217 currency code for this amount.

sepaDirectDebitPaymentMethodSpecificInput.
paymentProduct771SpecificInput.mandate

     customerReference
     recurrenceType
     signatureType

customerReference: A unique reference for your customer.

recurrenceType: The mandate's validity. Possible values:

  • "UNIQUE": The mandate is valid for one payment.
  • "RECURRING": The mandate is valid for the currently processed transaction and for an indefinite amount of subsequent transactions.

signatureType: The mode for signing the mandate. Possible values:

  • "UNSIGNED": For requests for which you already have received a signed (paper-based) mandate at some point in the past.
  • "TICK_BOX": After the redirection to the redirectUrl, the customer ticks the checkbox on the Hosted Checkout Page for giving the mandate.

Retrouvez des informations détaillées sur cet objet et ses propriétés dans notre documentation CreateHostedCheckoutAPI.

Server-to-server with mandate creation

Add the following properties to a standard CreatePayment request:


{
	"order": {
		"amountOfMoney": {
			"amount": 123,
			"currencyCode": "EUR"
		}
	},
	"sepaDirectDebitPaymentMethodSpecificInput": {
		"paymentProduct771SpecificInput": {
			"mandate": {
                        "returnUrl": "https://yourReturnUrl.com",
			"customer": {
					"bankAccountIban": {
						"iban": "BE45000253450589"
					},
					"companyName": "yourCompanyName",
					"contactDetails": {
						"emailAddress": "customer@domain.com"
					},
					"mandateAddress": {
						"city": "Paris",
						"countryCode": "FR",
						"street": "27 rue des fleurs",
						"zip": "75008"
					},
					"personalInformation": {
						"name": {
							"firstName": "john",
							"surname": "doe"
						},
						
					}
				},
			"customerReference": "0efaa98944324234b9ad27f9355a1093",
			"language": "en",
			"recurrenceType": "RECURRING",
			"signatureType": "UNSIGNED"
			}
		},
	"paymentProductId": 771
	}
}
Properties Remarks

order.amountOfMoney
     amount
     currencyCode

Amount: The gross amount you want to charge for this order.
CurrencyCode: The ISO 4217 currency code for this amount.

sepaDirectDebitPaymentMethodSpecificInput.
paymentProduct771SpecificInput.mandate

     returnURL
     customer
     customerReference
     language
     recurrenceType
     signatureType

returnURL: The URL we redirect your customers to after the payment has been finalised.

customer: All required information for creating the mandate.

customerReference: A unique reference for your customer.

language: The language version of the SEPA mandate form.

recurrenceType: The mandate's validity. Possible values:

  • "UNIQUE": The mandate is valid for one payment.
  • "RECURRING": The mandate is valid for the currently processed transaction and for an indefinite amount of subsequent transactions.

signatureType: The mode for signing the mandate. Possible values:

  • "UNSIGNED": For requests for which you already have received a signed (paper-based) mandate at some point in the past.
  • "TICK_BOX": After the redirection to the redirectUrl, the customer ticks the checkbox on the Hosted Checkout Page for giving the mandate.

paymentProductId: The numeric identifier of the payment method on our platform. Find this id in the "Aperçu" chapter.

Trouvez des informations détaillées sur cet objet et ses propriétés dans notre CreatePaymentAPI.

Server-to-server avec mandat existant

Ajoutez les propriétés suivantes à une demande standard CreatePayment :

{
	"order": {
		"amountOfMoney": {
			"amount": 200,
			"currencyCode": "EUR"
		}
	},
	"sepaDirectDebitPaymentMethodSpecificInput": {
		"paymentProduct771SpecificInput": {
			"existingUniqueMandateReference": "mandateRef_existingReference"
		},
		"paymentProductId": 771
		}
}
Propriétés Remarques

order.amountOfMoney
     amount
     currencyCode

amount: Le montant brut que vous souhaitez facturer pour cette commande. Si vous souhaitez d'abord créer le mandat puis traiter la transaction ultérieurement, définissez la valeur sur "0 ".
currencyCode: Le code de devise ISO 4217 pour ce montant. Valeur fixe "EUR".

sepaDirectDebitPaymentMethodSpecificInput.
paymentProduct771SpecificInput.existingUniqueMandateReference

La référence du mandat que votre client a signé lors de la création de la première transaction. Vous pouvez également réutiliser un mandat existant pour Card On File transactions.

paymentProductId

L'identifiant numérique de la méthode de paiement sur notre plateforme. Trouvez cet id dans le chapitre "Aperçu".

Trouvez des informations détaillées sur cet objet et ses propriétés dans notre CreatePaymentAPI.

Create mandate

Our CreateMandateAPI allows you to create a mandate for later use, thus separating it from the transaction request linked to this mandate. Consequentially, you can use this mandate in subsequent Server-to-server with existing mandate requests.

Add the following properties to a standard CreateMandate request:

{
   "customer":{
      "bankAccountIban":{
         "iban":"BE45000253450589"
      },
      "mandateAddress":{
         "city":"Monument Valley",
         "countryCode":"US",
         "houseNumber":"13",
         "street":"Desertroad",
         "zip":"84536"
      },
      "personalInformation":{
         "name":{
            "firstName":"Jane",
            "surname":"Doe"
         },
      }
   },
   "customerReference":"uniqueCustomerReference123456789012",
   "language":"en",
   "recurrenceType":"UNIQUE",
   "returnUrl":"https://yourReturnUrl.com",
   "signatureType":"UNSIGNED"
}
Properties Remarks

customer
     bankAccountIban.iban
     mandateAddress
     personalInformation

All required information for the mandate.

customerReference
language
recurrenceType
returnUrl
signatureType
uniqueMandateReference

customerReference: A unique reference for your customer.

language: The language version of the SEPA mandate form.

signatureType: The mode for signing the mandate. Fixed value "UNSIGNED" for requests for which you already have received a signed (paper-based) mandate at some point in the past.

returnUrl: The URL we redirect your customers to after the payment has been finalised.

recurrenceType: The mandate's validity. Possible values:

  • "UNIQUE": The mandate is valid for one payment.
  • "RECURRING": The mandate is valid for the currently processed transaction and for an indefinite amount of subsequent transactions.

Trouvez des informations détaillées sur cet objet et ses propriétés dans notre CreateMandateAPI.

Cinématique

Notez que les transactions SEPA réussies atteignent statusOutput.statusCode=4 au lieu de 9 immédiatement après leur traitement par notre plateforme. Une fois que notre plateforme reçoit une confirmation de l'émetteur pour cette transaction, nous la mettrons automatiquement à jour en statusOutput.statusCode=9. Lisez notre guide dédié pour en savoir plus sur les états de transaction.

With mandate creation via CreateHostedCheckout

This flow applies to the creation of a transaction and a mandate in one go.
It covers the following use cases:

  • One-off transactions
  • The first transaction of a series linked to a mandate
  1. Your customers finalise an order in your shop and select this payment method.
  2. You send a CreateHostedCheckout request to our platform to create a mandate and the payment.
  3. Our platform sends you a response containing a redirectUrl.
  4. You redirect your customers via the redirectUrl to the Hosted Checkout Page. They enter their bank credentials to confirm the payment.
  5. We redirect your customer to your returnUrl.
  6. We send the transaction for processing and receive the result from the issuer (within 1-2 days).
  7. As soon as the issuer has confirmed processing the transaction, our platform updates the transaction to statusOutput.statusCode=9
  8. You request the transaction result from our platform via GetHostedCheckout or receive the result via webhooks.
  9. If the transaction was successful(statusOutput.statusCode=9), you can deliver the goods / service.
  10. The issuer transfers the funds to us.
  11. We transfer the funds to you.

With mandate creation via CreatePayment

  1. Your customers finalise an order in your shop and select this payment method.
  2. You send a CreatePayment request to our platform to create a mandate.
  3. Our platform sends you a response containing a merchantAction.redirectData.redirectUrl (you will need for step 4) and sepaDirectDebitPaymentMethodSpecificOutput.paymentProduct771SpecificOutput.mandateReference.
  4. You redirect your customers to the merchantAction.redirectData.redirectUrl. They confirm the payment. 
  5. We redirect your customer to your returnUrl.
  6. We process the transaction immediately after the mandate creation. We receive the result from the issuer within 1-2 days.
  7. As soon as the issuer has confirmed processing the transaction, our platform updates the transaction to statusOutput.statusCode=9
  8. You request the transaction result from our platform via GetPaymentDetails or receive the result via webhooks.
  9. If the transaction was successful(statusOutput.statusCode=9), you can deliver the goods / service.
  10. The issuer transfers the funds to us.
  11. We transfer the funds to you.

Avec mandat existant via CreatePayment

Ce flux s'applique à :

  • Transactions uniques
  • Les transactions initiales ou ultérieures d'une série de paiements liés

pour lesquelles vous avez déjà un mandat.

  1. Vos clients finalisent une commande dans votre boutique et sélectionnent cette méthode de paiement.
  2. Vous envoyez cette demande CreatePayment à notre plateforme, en incluant la référence de mandat existante dans la propriété sepaDirectDebitPaymentMethodSpecificInput.paymentProduct771SpecificInput.existingUniqueMandateReference
  3. Nous traitons la transaction. Nous recevons le résultat de l'émetteur dans un délai de 1-2 jours.
  4. Dès que l'émetteur a confirmé le traitement de la transaction, notre plateforme met à jour la transaction en statusOutput.statusCode=9
  5. Vous demandez le résultat de la transaction à notre plateforme via GetPaymentDetails ou recevez le résultat via webhooks.
  6. Si la transaction a été réussie (statusOutput.statusCode=9), vous pouvez livrer les marchandises / services.
  7. L'émetteur nous transfère les fonds.
  8. Nous vous transférons les fonds.

Mandate creation for later use via CreateMandate

This flow applies if you want to create a mandate and charge your customer at a later stage (i.e. when your customers create an account with you and you charge them at a fixed date at a later stage):

  1. You send a CreateMandate request to our platform.
  2. You redirect your customers to the redirectUrl to fill in the SEPA mandate. They confirm the mandate creation.
  3. We redirect your customer to your returnUrl.

Test

Consultez nos Cas de test pour des données de test et des instructions détaillées.

Informations supplémentaires

Gestion des mandats

L’API vous permet de révoquer des mandats via un endpoint dédié.

Pour révoquer définitivement un mandat, envoyez une requête vers notre endpoint RevokeMandate :

{
	"revocationReason”:”receivedFinal"
}
Propriété Description
{merchantId} Votre compte sur notre plateforme via lequel les transactions pour ce mandat ont été traitées. Ajoutez-le comme paramètre de chemin à l’endpoint RevokeMandate.
{uniqueMandateReference} La référence du mandat que vous souhaitez révoquer. Ajoutez-la comme paramètre de chemin à l’endpoint RevokeMandate.
revocationReason

Le motif de la révocation définitive du mandat. Valeurs possibles :

  • receivedFinal : le dernier paiement lié à un mandat a été traité.
  • userAction : réservé à toute action d’un client/merchant/institution financière non couverte par les autres valeurs possibles.
  • obsolescence : le mandat arrive en fin de vie (36 mois pour tout mandat entraînent sa révocation automatique).
  • refused : mandat refusé par l’institution financière.
  • revocationAskedByDebitor : mandat révoqué par le client.
  • revocationAskedByCreditor : mandat annulé par le marchand.
  • deletionAskedByDebitor : mandat supprimé par le client.
  • deletionAskedByCreditor : mandat supprimé par le marchand.

Cette page vous a-t-elle été utile ?

Avez-vous des commentaires ?

Merci pour votre réponse.