Lorsqu'un paiement est annulé, Xsolla envoie les détails de la transaction
annulée via un webhook de type refund
à l'URL du webhook. Pour en savoir plus
sur le processus de remboursement, consultez ces instructions.
Si une réponse contenant un code 5xx
est reçue, Xsolla renvoie un webhook
avec un intervalle de temps prolongé jusqu'à ce que votre écouteur confirme la
réception. Le nombre maximum de tentatives est de 12.
Remarque
Si Xsolla initie un remboursement et qu'une réponse contenant un code 5xx
est reçue pour le webhook, le paiement sera quand même remboursé.
Pour autoriser la réception d'informations détaillées dans les webhooks, réglez, dans le Compte éditeur dans la section Project settings > Webhooks > Advanced settings, la bascule suivante sur On :
Bascule | Description |
---|---|
Afficher infos sur transactions effectuées via modes de paiement enregistrés | Les informations sont passées dans les paramètres personnalisés suivants du webhook :
|
Codes de remboursement :
Code | Motif | Description |
---|---|---|
1 | Cancellation by the user request / the game request | Annulation initiée dans le Compte éditeur. |
2 | Chargeback | Chargeback pour une transaction demandé. |
3 | Integration error | Problèmes d'intégration entre Xsolla et le jeu. Recommandation : n'ajoutez pas l'utilisateur à la liste noire. |
4 | Potential fraud | Fraude soupçonnée. Recommandation : ajoutez l'utilisateur à la liste noire. |
5 | Test payment | Transaction test suivie d'une annulation. Recommandation : n'ajoutez pas l'utilisateur à la liste de noire. |
6 | User invoice expired | Facture en retard (utilisée pour le modèle de paiement différé). |
7 | Fraud notification from PS | Paiement refusé par le système de paiement en raison d'une fraude potentielle. Recommandation : ajoutez l'utilisateur à la liste noire. |
8 | Cancellation by the PS request | Annulation demandée par le système de paiement. Recommandation : n'ajoutez pas l'utilisateur à la liste noire. |
9 | Cancellation by the user request | Utilisateur non satisfait du jeu ou de l'achat pour quelque raison que ce soit. Recommandation : n'ajoutez pas l'utilisateur à la liste noire. |
10 | Cancellation by the game request | Annulation demandée par le jeu. Recommandation : n'ajoutez pas l'utilisateur à la liste noire. |
11 | Account holder called to report fraud | Le titulaire de compte déclare qu'il n'a pas effectué la transaction. |
12 | Friendly fraud | Fraude de type « Friendly fraud » signalée. |
13 | Duplicate | Transaction dupliquée pour la même facture. |
notification_type required | string Type de notification. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
required | object Détails de la transaction (objet). | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
required | object Informations sur le paiement (objet). | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
custom_parameters | object Vos paramètres personnalisés. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object Informations sur l'achat (objet). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object Détails du remboursement (objet). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object Paramètres personnalisés de projet (objet). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object Informations sur l'utilisateur (objet). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Renvoyez pour indiquer un traitement réussi.
Renvoyez en cas d'erreur dans les informations fournies (par exemple, un paramètre requis manquant, une autorisation échouée, etc.).
Renvoyez pour indiquer des erreurs temporaires liées à vos serveurs.
curl -v 'https://your.hostname/your/uri' \ -X POST \ -d '{ "notification_type": "refund", "settings": { "project_id": 18404, "merchant_id": 2340 }, "purchase": { "subscription": { "plan_id": "b5dac9c8", "subscription_id": "10", "date_create": "2014-09-22T19:25:25+04:00", "currency": "USD", "amount": 9.99 }, "checkout": { "currency": "USD", "amount": 50 }, "total":{ "currency": "USD", "amount": 200 } }, "user": { "ip": "127.0.0.1", "phone": "18777976552", "email": "email@example.com", "id": "1234567", "name": "John Smith", "country": "US" }, "transaction": { "id": 1, "external_id": 1, "dry_run": 1, "agreement": 1 }, "refund_details": { "code": 4, "reason": "Potential fraud" }, "payment_details": { "sales_tax": { "currency": "USD", "amount": 0 }, "direct_wht": { "currency": "USD", "amount": 0.70 }, "xsolla_fee": { "currency": "USD", "amount": "10" }, "payout": { "currency": "USD", "amount": "200" }, "payment_method_fee": { "currency": "USD", "amount": "20" }, "payment": { "currency": "USD", "amount": "230" }, "repatriation_commission": { "currency": "USD", "amount": 10 } } } }'
{- "error": {
- "code": "INCORRECT_AMOUNT",
- "message": "Incorrect amount"
}
}