Search Overlay

Traiter les remboursements fractionnés par carte

POST /cardpayments/v1/accounts/account_id/settlements/id/refunds

Lors d’un remboursement par paiements fractionnés, une partie du montant remboursé peut être récupérée sur un ou plusieurs comptes liés, que le règlement initial ait été fractionné ou non.

Pour procéder à un remboursement, vous devez faire une requête POST au point d’extrémité des remboursements, en remplaçant account_id par votre numéro de compte marchand unique et id par l’identifiant unique renvoyé dans la réponse au règlement initial.

curl -X POST https://api.test.paysafe.com/cardpayments/v1/accounts/89987201/settlements/280e3b80-1beb-424a-9cb3-5ef7444112f9/refunds \
-u devcentre322:B-qa2-0-53625f86-302c021476f52bdc9deab7aea876bb28762e62f92fc6712d0214736abf501e9675e55940e83ef77f5c304edc7968 \
-H ’Content-Type: application/json’ \
-d ’ {
"merchantRefNum" : "merchantRef_003",
"amount":10098,
"splitpay": [
{
"linkedAccount": "1001391850",
"percent": 5.75
},
{
"linkedAccount": "1001391860",
"amount": 500
}
]
} ’

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

ValeurTypeDescription
montantnumber

Le 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.

Cet attribut est facultatif; si aucune valeur n’est fournie, le montant restant sur le règlement sera remboursé.

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.
splitpayarrayIl est requis pour un remboursement par paiements fractionnés. Données des comptes liés contribuant au remboursement.

Avant d’essayer l’exemple ci-dessus, vous devez :

  • Fournir un numéro de référence 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’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.
  • Remplacer tous les numéros de compte liés et les valeurs de pourcentage et de montant par des valeurs de test.

Par défaut, le système de traitement des cartes vérifie qu’il n’y a pas de transactions en double. Vous pouvez ignorer ce comportement en définissant le paramètre dupCheck sur « false », comme suit : "dupCheck": "false",

Dans le cas des paiements fractionnés, les éléments suivants sont également vérifiés :

  • Un pourcentage ou un montant, mais pas les deux, est spécifié pour chaque compte lié.
  • Le paiement fractionné est activé pour le compte du partenaire ou du marchand identifié dans la requête API POST ou GET.
  • Les comptes liés sont liés au compte du partenaire ou du marchand.
  • Le compte du partenaire/marchand ne fait pas partie des comptes liés.
  • La somme des montants alloués à tous les comptes liés ne dépasse pas le total de la transaction.

{

"links":[
{
"rel":"self",
"href":"https://api.test.paysafe.com/cardpayments/v1/accounts/89987201/refunds/ebf6ae3d-88e1-40da-9b98-81044467345b"
}
],
"id":"ebf6ae3d-88e1-40da-9b98-81044467345b",
"merchantRefNum":"merchantRef_003",
"txnTime":"2017-05-01T14:52:35Z",
"status": "PENDING",
"acquirerResponse": {
"code": "DJN",
"terminalId": "12345678",
"batchNumber": "001",
"seqNumber": "151",
"effectiveDate": "170728"
},
"amount":10098,
"splitpay": [
{
"linkedAccount": "1001391850",
"percent": 5.75,
"amount": 581
},
{
"linkedAccount": "1001391860",
"amount": 500
}
]

}

Outre les attributs de la requête, la réponse peut également contenir les attributs décrits ci-dessous.

ValeurTypeDescription
acquirerResponsearrayLa réponse de l’acquéreur.
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 remboursements.

Sur cette page