Transferts de solde
- Onboarding
- United States
- Legacy
Les plateformes peuvent transférer des soldes entre leurs marchands liés et leur propre compte à l’aide de la fonction de transfert. Par exemple, la plateforme peut vouloir accorder un crédit à un marchand dans le cadre d’une promotion. Pour être en mesure d’effectuer des transferts, le soutien technique de Paysafe configure le compte de la plateforme avec la capacité qui lui permet de transférer des soldes avec tous les marchands qui lui sont liés. Pour pouvoir transférer des soldes, la plateforme doit d’abord être liée aux autres comptes lors de l’intégration, et seuls les comptes réglant dans la même devise peuvent être liés. Les soldes ne peuvent être transférés que d’un compte à l’autre à la fois, et le montant du transfert ne peut dépasser le solde positif du compte source.
Lorsque des rétrofacturations sur carte ou des restitutions sur prélèvement automatique sont affichés pour une transaction par paiement fractionné, le marchand ou la plateforme à l’origine de la transaction doit transférer les soldes correspondants entre les comptes liés pour compenser, le cas échéant, toute partie initialement transférée entre eux par le biais de paiements fractionnés.
Points de terminaison
Les transferts de solde utilisent l’API de gestion des comptes, et le point de terminaison (URI ou URL) doit pointer vers l’environnement de test ou de production (en direct).
Point de terminaison d’API de test : https://api.test.paysafe.com/
Par exemple : https://api.test.paysafe.com/accountmanagement/v1/accounts- Point de terminaison d’API de production : https://api.paysafe.com/
Par exemple : https://api.paysafe.com/accountmanagement/v1/accounts
Les détails complets de chaque requête d’API sont donnés dans la Référence API Gestion de compte.
Créer un transfert de débit
Utiliser un transfert de débit pour transférer un solde du compte identifié dans l’URI du point de terminaison d’API vers le compte lié dans le corps de la requête.
POST /accountmanagement/v1/accounts/account_id/debits
curl -X POST https://api.test.paysafe.com/accountmanagement/v1/accounts/1001384520/debits \
-u devcentre322:B-qa2-0-53625f86-302c021476f52bdc9deab7aea876bb28762e62f92fc6712d0214736abf501e9675e55940e83ef77f5c304edc7968 \
-H ’Content-Type: application/json’ \
-d ’ {
"amount": 100,
"merchantRefNum": "merchantRefNum8",
"detail": "Refund",
"linkedAccount": "100222222"
}'
L’objet de la requête contient les attributs suivants :
Valeur | Type | Requis? | Description | Exemple |
---|---|---|---|---|
montant | integer | Oui | Il s’agit du montant à transférer sur le compte lié en unités monétaires mineures. | 100 |
detail | string | Non | Description de la transaction, ajoutée par le marchand. Longueur maximale de 4 000 caractères. | Remboursement |
dupCheck | boolean | Non | Défini sur « false » pour remplacer la vérification par défaut des transactions en double. | false |
linkedAccount | string | Oui | L’identifiant du compte lié qui doit recevoir le montant débité. Ce compte doit déjà être lié au compte du marchand. | 100222222 |
merchantRefNum | string | Oui | L’identifiant unique du marchand pour cette requête. | merchantRefNum8 |
{
"id": "82e0094d-1083-4c17-a6bc-d1c1fed1bdc6",
"amount": 100,
"detail": "Refund",
"linkedAccount": "100222222",
"merchantRefNum": "merchantRefNum8",
"status": "COMPLETED",
"links": [{
"rel": "self",
"href": "http://api.test.paysafe.com/accountmanagement/v1/accounts/1001384520/debits/82e0094d-1083-4c17-a6bc-d1c1fed1bdc6"
}]
}
La réponse comporte les mêmes champs que la requête, plus l’identifiant de la transaction, l’état de la transaction (p. ex. COMPLETED) et un objet de liens, qui comporte l’URI de la transaction. Pour rechercher une transaction, utilisez soit l’identifiant de transaction, soit le numéro de référence du marchand (merchantRefNum) fourni avec la demande de débit initiale.
Créer un transfert de crédit
Utiliser un transfert de crédit pour transférer les soldes du compte lié dans le corps de la requête vers le compte identifié dans l’URI du point de terminaison d’API.
POST /accountmanagement/v1/accounts/account_id/credits
Les structures de la requête et de la réponse du transfert de crédit sont identiques à celles du transfert de débit.
curl -X POST https://api.test.paysafe.com/accountmanagement/v1/accounts/1001384520/credits \
-u devcentre322:B-qa2-0-53625f86-302c021476f52bdc9deab7aea876bb28762e62f92fc6712d0214736abf501e9675e55940e83ef77f5c304edc7968 \
-H ’Content-Type: application/json’ \
-d ’ {
"amount": 500,
"merchantRefNum": "ORDER_ID:1231",
"detail":"Charging 1004509410 a fee","detail":"Charging 1004509410 a fee",
"linkedAccount": "1004509410"
}'
{
"id": "82e0094d-1083-4c17-a6bc-d1c1fed1bdc7",
"amount": 500,
"detail": "Charging 1004509410 a fee",
"linkedAccount": "1004509410",
"merchantRefNum": "ORDER_ID:1231",
"status": "COMPLETED",
"links": [{
"rel": "self",
"href": "http://localhost:7001/accountmanagement/v1/accounts/1001384520/credits/82e0094d-1083-4c17-a6bc-d1c1fed1bdc7"
}]
}
Rechercher un transfert de débit
Vous pouvez consulter un transfert de débit en indiquant votre numéro de compte et l’identifiant de la transaction (renvoyé dans la réponse de débit) dans l’URL comme suit :
GET /accountmanagement/v1/accounts/account_id/debits/transaction_id
Si vous n’avez pas d’identifiant de transaction, vous pouvez rechercher une transaction en vous basant sur l’élément merchantRefNum que vous avez fourni avec la requête de débit initiale :
GET /accountmanagement/v1/accounts/account_id/debits?merchantRefNum=merchantRefNum
La réponse à chacune de ces requêtes est un ensemble de transferts, avec un seul élément dans l’ensemble lorsque dupCheck est défini sur « true ».
Consulter un transfert de crédit
Vous pouvez consulter un transfert de crédit en indiquant votre numéro de compte et l’identifiant de la transaction (renvoyé dans la réponse de crédit) dans l’URL comme suit :
GET /accountmanagement/v1/accounts/account_id/credits/transaction_id
Si vous n’avez pas d’identifiant de transaction, vous pouvez rechercher une transaction en vous basant sur l’élément merchantRefNum que vous avez fourni avec la requête de crédit initiale :
GET /accountmanagement/v1/accounts/account_id/credits?merchantRefNum=merchantRefNum
La réponse à chacune de ces requêtes est un ensemble de transferts, avec un seul élément dans l’ensemble lorsque dupCheck est défini sur « true ».
Erreurs
Les erreurs suivantes peuvent être renvoyées.
Code d’erreur HTTP | Code d’erreur | Message d’erreur | Description |
---|---|---|---|
409 | 5031 | La transaction que vous avez soumise a déjà été traitée. | Il s’agit d’une transaction en double. |
402 | 5021 | Votre requête de transaction a été refusée. | Tentative de transfert d’un montant supérieur au solde du compte. |
401 | 5040 | Votre compte marchand n’est pas configuré pour la transaction que vous avez tenté d’effectuer. | Compte :
|