Xsolla-logo

Remboursement partielWebhook POST

Lorsqu'un remboursement partiel est effectué, Xsolla envoie les détails de la transaction annulée via un webhook de type partial_refund à l'URL du webhook. Pour en savoir plus sur le processus de remboursement partiel, consultez ces instructions.

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 :

  • saved_payment_method:
    • 0 — le mode de paiement enregistré n'a pas été utilisé ;
    • 1 — le mode de paiement a été enregistré lors du paiement en cours ;
    • 2 — le mode de paiement précédemment enregistré est utilisé.
  • payment_type:
    • 1 — paiement unique ;
    • 2 — paiement récurrent.

Codes de remboursement :

Code Motif Description
1 Cancellation by the user request / the game request Annulation initiée dans le Compte éditeur.
3 Integration error Problèmes d'intégration entre Xsolla et le jeu.
Recommandation : n'ajoutez pas l'utilisateur à la liste noire.
5 Test payment Transaction test suivie d'une annulation.
Recommandation : n'ajoutez pas l'utilisateur à la liste de noire.
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.
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.
Request
Request Body schema: application/json
notification_type
required
string

Type de notification.

required
object

Détails de la transaction (objet).

agreement
integer

ID de contrat.

date
string

Date de transaction.

dry_run
integer

Transaction test. Le paramètre a la valeur 1 s'il s'agit d'une transaction test ou n'est pas envoyé si la transaction est réelle.

external_id
string

External ID de la transaction.

id
integer

ID de transaction.

required
object

Informations sur le paiement (objet).

object

Retenue à la source directe.

amount
integer <float>

Montant.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

percent
integer <float>

Taux de retenue à la source directe.

object

Montant payé par l'utilisateur (objet).

amount
integer <float>

Montant.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

object

Frais du système de paiement.

amount
integer <float>

Montant.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

object

Montant débité du système de paiement.

amount
integer <float>

Montant.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

object

Détails de virement (objet).

amount
integer <float>

Montant.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

payout_currency_rate
integer <float>

Taux de change entre les devises de paiement et de virement.

object

Données sur les frais de rapatriement imposés à Xsolla par des tiers.

amount
integer <float>

Montant.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

object

Taxe de vente (objet ; États-Unis et Canada uniquement).

amount
integer <float>

Montant.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

percent
integer <float>

Taux de taxe de vente.

object

Informations sur la TVA (objet ; UE uniquement).

amount
integer <float>

Montant.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

percent
integer <float>

Taux de TVA.

object

Montant débité du solde Xsolla.

amount
integer <float>

Montant.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

object

Frais Xsolla (objet).

amount
integer <float>

Montant.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

custom_parameters
object

Vos paramètres personnalisés.

object

Informations sur l'achat (objet).

required
object

Prix total d'achat (objet).

amount
integer <float>

Montant du remboursement partiel.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

object

Informations au moment du paiement (objet).

amount
integer <float>

Montant de l'achat.

currency
string

Devise. Code de devise à trois lettres selon la norme ISO 4217.

object

Détails du remboursement (objet).

author
string

Initiateur du remboursement. La valeur du champ est passée conformément au tableau :

Initiateur du remboursement Valeur du champ
Jeu (via API). API
Utilisateur du Compte éditeur (remboursement automatique). Adresse e-mail de l'utilisateur
Utilisateur du Compte éditeur (avec l'assistance du service client Xsolla). support@xsolla.com
Xsolla (avec l'assistance du service client Xsolla). support@xsolla.com
code
integer

ID de code.

date
string

Date de remboursement.

reason
string

Motif de remboursement.

object

Paramètres personnalisés de projet (objet).

merchant_id
integer

ID de commerçant.

project_id
integer

ID de projet. Ce paramètre se trouve dans le Compte éditeur à côté du nom du projet.

object

Informations sur l'utilisateur (objet).

id
required
string

ID utilisateur.

country
string

Pays de l'utilisateur. Code pays à deux lettres majuscules selon la norme ISO 3166-1 alpha-2.

email
string

Adresse e-mail de l'utilisateur.

ip
string

IP de l'utilisateur.

name
string

Nom d'utilisateur.

phone
string

Téléphone de l'utilisateur.

zip
string

ZIP ou code postal de l'utilisateur.

Responses
204

Renvoyez pour indiquer un traitement réussi.

400

Renvoyez en cas d'erreur dans les informations fournies (par exemple, un paramètre requis manquant, une autorisation échouée, etc.).

500

Renvoyez pour indiquer des erreurs temporaires liées à vos serveurs.

Request samples
curl -v 'https://your.hostname/your/uri' \
-X POST \
-d '{
        "notification_type": "partial_refund",
        "settings": {
          "project_id": 18404,
          "merchant_id": 2340
        },
        "purchase": {
            "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,
            "date": "2022-03-01 10:53:15"
        },
        "refund_details": {
            "author": "email@example.com",
            "date": "2022-03-01 10:56:48"
        },
        "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
            }
        }
    }
}'
Response samples
application/json
{
  • "error": {
    }
}