Search Overlay

Traiter un crédit autonome par prélèvement automatique fractionné

POST /directdebit/v1/accounts/account_id/standalonecredits

Lors d’un crédit autonome par prélèvement automatique fractionné, une partie du montant du crédit peut être prélevée sur un ou plusieurs comptes liés.

L’API Prélèvement automatique vous permet de créditer des comptes spécifiés en utilisant les systèmes bancaires de paiement suivants :

  • (CCA) ACH
  • TEF
  • SEPA
  • BACS (uniquement avec un jeton de paiement)

Par souci de concision, les exemples présentés dans cette page concernent le TEF sans jeton de paiement. Pour des exemples d’autres systèmes et pour savoir comment créditer des comptes bancaires à l’aide d’un jeton de paiement, voir la Référence API.

Pour traiter un crédit autonome, vous devez adresser une requête POST au point d’extrémité des crédits autonomes, en remplaçant account_id par votre numéro de compte marchand unique.

curl -X POST https://api.test.paysafe.com/directdebit/v1/accounts/89987201/standalonecredits \
-u devcentre322:B-qa2-0-53625f86-302c021476f52bdc9deab7aea876bb28762e62f92fc6712d0214736abf501e9675e55940e83ef77f5c304edc7968 \
-H ’Content-Type: application/json’ \
-d ’ {
"merchantRefNum": "CREDIT_ID:1231",
"amount": 12020,
"eft": {
"accountHolderName": "First Company",
"accountNumber": "998772192",
"transitNumber": "22446",
"institutionId": "001",
"paymentDescriptor": "Transaction"
},
"billingDetails": {
"street": "100 Queen Street West",
"street2": "Apt. 55",
"city": "Ottawa",
"state": "ON",
"country": "CA",
"zip": "M1M 1M1",
"phone": "6139991100"
},
"splitpay": [
{
"linkedAccount": "1001395900",
"percent": 5
},
{
"linkedAccount": "1001395910",
"amount": 500
}
]
} ’

Les attributs suivants de la requête sont nécessaires :

ValeurTypeDescription
montantnumberLe montant de la requête, en unités mineures de la devise du compte marchand spécifié à l’aide du paramètre account_id de l’URL. Par exemple, pour traiter 10,99 USD, cette valeur doit être 1 099; pour traiter 1 000 yens japonais, cette valeur doit être 1 000; pour traiter 10,139 dinars tunisiens, cette valeur doit être 10 139.
billingDetailsobject

L’adresse de facturation du client.

Cet objet n’est requis pour la requête que lorsqu’un jeton de paiement n’est pas fourni.

tefobject

Les données relatives au compte bancaire ou au jeton de paiement utilisé pour la requête.

Remplacez par ach, objet ou jeton sepa ou jeton bacs, selon le cas.

merchantRefNumstringLe numéro de référence du marchand créé par le marchand et soumis dans le cadre de la requête. Il doit être unique pour chaque requête.
splitpayarrayNécessaire uniquement pour un crédit de paiement fractionné. Définit les comptes liés ainsi que les montants et les pourcentages de règlement qu’ils contribuent au crédit.

Par défaut, le système de traitement des prélèvements automatiques vérifie qu’il n’y a pas de transactions en double. Avant d’essayer l’exemple ci-dessus, vous devez :

  • Fournir un numéro de référence de marchand unique pour chaque transaction (si cette valeur n’est pas unique et que le numéro a été utilisé au cours des 90 derniers jours, la requête sera considérée comme un doublon).
  • Remplacer le numéro de compte (89987201 dans l’exemple ci-dessus) dans l’URL par le numéro de compte de test que vous avez reçu.
  • Remplacer la clé API (après le -u) par la clé API que vous avez reçue.

Vous pouvez ignorer la vérification des doublons en définissant le paramètre dupCheck sur « false », comme dans l’exemple suivant : "dupCheck": "false",

{

"links":[
{
"rel":"self",
"href":"https://api.test.paysafe.com/directdebit/v1/accounts/89987201/standalonecredits/a02e52c7-c991-4418-966a-b62989cb0eae"
}
],
"id":"a02e52c7-c991-4418-966a-b62989cb0eae",
"dupCheck":true,
"merchantRefNum":"CREDIT_ID:1231",
"amount":12020,
"txnTime":"2014-12-14T15:12:18Z",
"currencyCode":"USD",
"status":"PENDING",
"customerIp":"192.0.126.111",
"eft":{
"accountHolderName":"First Company",
"transitNumber":"22446",
"institutionId":"001",
"lastDigits":"09",
"paymentDescriptor":"Transaction"
},
"profile":{
"firstName":"Joe",
"lastName":"Smith",
"email":"Joe.Smith@hotmail.com"
},
"billingDetails":{
"street":"100 Queen Street West",
"city":"Los Angeles",
"state":"CA",
"country": "USA",
"zip":"90210",
"phone":"3102649010"
},
"splitpay":[
{
"linkedAccount":"1001395900",
"percent":5,
"amount":601
},
{
"linkedAccount":"1001395910",
"amount":500
}
]

}

Outre les attributs de la requête, la réponse contient les attributs suivants :

ValeurTypeDescription
currencyCodestringLa devise du compte marchand, p. ex. USD.
IdstringL’identifiant de la réponse, qui peut être utilisé pour retrouver la réponse ultérieurement.
linksarrayLes points d’extrémité à cibler en fonction de l’état final de la transaction.
splitpayarrayLes comptes liés et les montants remboursés.
statusenumL’état de la requête de transaction.
txnTimestringLa date et l’heure auxquelles la transaction a été traitée.

Le tableau splitpay contient un ou plusieurs objets de compte lié :

ValeurTypeRequis?DescriptionExemple
linkedAccountstringOuiIl s’agit de l’identifiant du compte lié. Ce compte doit déjà être lié au compte du marchand.123124124
montantintegerOui

Le montant à transférer sur le compte lié en unités monétaires mineures. Il s’agit soit du « montant » (s’il a été spécifié) dans la requête, soit – si « pourcentage » a été spécifié – du résultat du calcul du pourcentage.

505
percentnumberNon

Le « pourcentage » (s’il est spécifié) dans la requête pour le compte lié, soit le pourcentage du montant total de la transaction à transférer depuis ce compte. Il n’est pas renvoyé si un « montant » a été spécifié dans la requête.

5,25

Voir notre section Référence API pour une liste de tous les attributs et types JSON disponibles pour le point d’extrémité des crédits autonomes.

Sur cette page