# Annulation de commande (avec données de paiement et de transaction) Xsolla envoie le webhook order_canceled à l'URL spécifiée lorsque le paiement est annulé par l'utilisateur, le partenaire ou automatiquement. Le webhook inclut des informations sur les objets retournés, le paiement et la commande annulée. Le webhook n'est pas envoyé si le paiement n'a pas abouti, par exemple : * l'interface de paiement a été ouverte, mais l'utilisateur n'a pas procédé au paiement de la commande ; * l'interface de paiement a été ouverte, mais des erreurs se sont produites lors du paiement. Le temps de traitement recommandé pour le webhook est de 3 secondes. Endpoint: POST order-cancellation Version: 1.0 ## Request fields (application/json): - `billing` (object) Données de la transaction et du paiement. - `billing.notification_type` (string, required) Type de notification. - `billing.payment_details` (object, required) Informations sur le paiement (objet). - `billing.payment_details.country_wht` (object) Retenue à la source appliquée dans certains pays pour les transactions transfrontalières (objet). - `billing.payment_details.country_wht.amount` (number) Montant. - `billing.payment_details.country_wht.currency` (string) Devise. Code de devise à trois lettres selon la norme [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). - `billing.payment_details.country_wht.percent` (number) Taux de retenue à la source du pays, en %. - `billing.payment_details.direct_wht` (object) Retenue à la source directe. - `billing.payment_details.direct_wht.percent` (number) Taux de retenue à la source directe. - `billing.payment_details.payment` (object) Montant payé par l'utilisateur (objet). - `billing.payment_details.payment_method_fee` (object) Frais du système de paiement. - `billing.payment_details.payment_method_sum` (object) Montant débité du système de paiement. - `billing.payment_details.payout` (object) Détails de virement (objet). - `billing.payment_details.payout_currency_rate` (string) Taux de change entre les devises de paiement et de virement. - `billing.payment_details.repatriation_commission` (object) Données sur les frais de rapatriement imposés à Xsolla par des tiers. - `billing.payment_details.sales_tax` (object) Taxe de vente (objet ; États-Unis et Canada uniquement). - `billing.payment_details.sales_tax.percent` (number) Taux de taxe de vente. - `billing.payment_details.user_acquisition_fee` (object) Montant total de la commission d'acquisition d'utilisateurs déduits pour les achats effectués via les réseaux d'affiliation et les influenceurs (objet). - `billing.payment_details.user_acquisition_fee.percent` (number) Taux de la commission d'acquisition de l'utilisateur, en %. - `billing.payment_details.vat` (object) Informations sur la TVA (objet ; UE uniquement). - `billing.payment_details.vat.percent` (number) Taux de TVA. - `billing.payment_details.xsolla_balance_sum` (object) Montant débité du solde Xsolla. - `billing.payment_details.xsolla_fee` (object) Frais Xsolla (objet). - `billing.purchase` (object) Informations sur l'achat (objet). - `billing.purchase.subscription` (object) Informations de l'abonnement (objet). - `billing.purchase.subscription.amount` (number) Prix en monnaie réelle. - `billing.purchase.subscription.date_create` (string) Date de création de l'abonnement. Date et heure selon la norme [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). - `billing.purchase.subscription.plan_id` (string) ID de plan (externe si le plan a été créé via API). - `billing.purchase.subscription.subscription_id` (integer) ID d'abonnement dans la base de données Xsolla. - `billing.purchase.subscription.tags` (array) Balises du plan. - `billing.purchase.total` (object, required) Prix total d'achat (objet). - `billing.purchase.total.amount` (number) Montant total du paiement. - `billing.refund_details` (object) Détails du remboursement (objet). - `billing.refund_details.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 - `billing.refund_details.code` (integer) ID de code. - `billing.refund_details.reason` (string) Motif de remboursement. - `billing.settings` (object) Paramètres personnalisés de projet (objet). - `billing.settings.merchant_id` (integer) ID de commerçant. - `billing.settings.project_id` (integer) ID de projet. Ce paramètre se trouve dans le [Compte éditeur](https://publisher.xsolla.com/) à côté du nom du projet. - `billing.transaction` (object, required) Détails de la transaction (objet). - `billing.transaction.agreement` (integer) ID de contrat. - `billing.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. - `billing.transaction.external_id` (string) External ID de la transaction. - `billing.transaction.id` (integer) ID de transaction. - `billing.transaction.payment_method_order_id` (string) ID de paiement dans le système de paiement. - `custom_parameters` (object) Informations supplémentaires. - `items` (array, required) Liste des objets achetés par l'utilisateur. L'ensemble des paramètres inclus dans le tableau dépend de la version du webhook. La version 2 comprend des paramètres supplémentaires : is_free, is_bonus et is_bundle_content. Pour changer de version, passez son numéro dans le paramètre version de l'appel API [Update information about webhook settings](/fr/api/igs/operation/update-webhook/). - `order` (object, required) Informations sur commande. - `order.amount` (string, required) Coût total du panier en fonction de la devise sélectionnée. - `order.comment` (string,null, required) Commentaire de l'utilisateur sur la commande. - `order.coupons` (array) Coupons appliqués. Si aucun coupon n'a été appliqué, le tableau n'est pas renvoyé. - `order.coupons.code` (string) Code du coupon appliqué. - `order.coupons.external_id` (string) External ID. - `order.currency` (string, required) Devise de commande. L'UGS est utilisée pour la monnaie virtuelle et un code à trois lettres selon la norme [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) pour les devises réelles. - `order.currency_type` (string, required) Type de devise de paiement. Pour une commande gratuite, la valeur unknown est spécifiée. Enum: "real", "virtual", "unknown", "loyalty_point" - `order.id` (integer, required) Identifiant unique de la commande de l'utilisateur côté Xsolla. - `order.invoice_id` (string,null, required) ID de facture pour les paiements en devises réelles. Les paiements en monnaie virtuelle ou les biens gratuits ont une valeur null. - `order.mode` (string, required) Mode de paiement. La valeur default est utilisée pour les paiements réels et sandbox pour les paiements test. Enum: "default", "sandbox" - `order.platform` (string,null, required) Plateforme de paiement. La valeur xsolla est utilisée pour les paiements via Xsolla. Pour les autres paiements, la valeur correspondant au nom de la plateforme de publication de jeux est utilisée : playstation_network, xbox_live, pc_standalone, nintendo_shop, google_play, app_store_ios, android_standalone, ios_standalone, android_other, ios_other, pc_other. Enum: "xsolla", "playstation_network", "xbox_live", "pc_standalone", "nintendo_shop", "google_play", "app_store_ios", "android_standalone", "ios_standalone", "android_other", "ios_other", "pc_other" - `order.promocodes` (array) Codes promo appliqués. Si aucun code promo n'a été appliqué, le tableau n'est pas renvoyé. - `order.promocodes.code` (string) Code promo appliqué. - `order.promotions` (array, required) Promotions s'appliquant à l'ensemble de la commande. Le tableau est renvoyé dans les cas suivants : - Une promotion affecte le montant total de l'achat, par exemple un code promo avec le paramètre Discount on purchase ; - Aucune remise n'est appliquée à l'achat, mais des objets bonus sont ajoutés à la commande. Dans ce cas, les valeurs du coût avec remise ([amount_with_discount](/fr/webhooks/#operation/order-cancellation!path=order/promotions/amount_with_discount&t=request)) et sans remise ([amount_without_discount](/fr/webhooks/#operation/order-cancellation!path=order/promotions/amount_without_discount&t=request)) sont renvoyées et sont identiques, puisqu'aucune remise n'est appliquée. Si aucune promotion n'est appliquée à l'ensemble de la commande, un tableau vide est renvoyé. - `order.promotions.amount_with_discount` (string) Coût total des objets bénéficiant d'une remise. - `order.promotions.amount_without_discount` (string) Coût total des objets sans remise. - `order.promotions.sequence` (integer) Ordre d'application de promotions. - `order.status` (string, required) Statut de la commande. - `user` (object, required) Informations sur l'utilisateur. - `user.country` (string) Pays de l'utilisateur. Code pays à deux lettres majuscules selon la norme [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). - `user.email` (string, required) Adresse e-mail de l'utilisateur. - `user.external_id` (string, required) ID utilisateur. ## Response 200 fields ## Response 400 fields