Remises et taxes
Introduction
L'une des monnaies les plus précieuses dans le commerce en ligne est la confiance : la confiance de vos clients en vous !
La confiance naît de la transparence, notamment en ce qui concerne ce que vous facturez à vos clients. Nous voulons vous aider à créer cette transparence avec notre fonctionnalité de Remises et taxes.
En ajoutant simplement quelques propriétés à votre requête CreateHostedCheckout/CreatePayment, vous pouvez afficher :
- La quantité des biens/services
- Les prix nets des produits
- Les frais d'expédition (ou tout autre service/type de coût)
- La part de TVA
sur nos pages de paiement ou celles des prestataires tiers.
Cette fonctionnalité est actuellement disponible pour :
Cartes de Crédit (Hosted Checkout Page)
Paypal
Klarna
Remises et taxes
Les propriétés suivantes définissent les éléments individuels liés au coût de votre commande dans une requête CreateHostedCheckout/CreatePayment :
Propriétés | Remarques |
---|---|
order.amountOfMoney.amount |
Le montant total de la commande complète, y compris
|
shoppingCart.items.amountOfMoney.amount |
Le montant total de la commande complète. Identique à order.amountOfMoney.amount |
shoppingCart.items.
|
Détails des prix de tous les articles de la commande complète dans l'objet orderLineDetails
|
Intégration
Pour bien comprendre comment cette fonctionnalité fonctionne, nous avons créé deux exemples :
Utilisez ces scénarios pratiques pour appliquer des taxes et des remises dans vos prochaines demandes de paiement.
A) Commande avec frais d'expédition
Ce exemple comprend :
- Un ordinateur portable pour un prix net de 500,00€
- Une remise de 50,00€ sur l'ordinateur
- 94,5€ de TVA à 21% sur l'ordinateur
- 12,10€ de frais d'expédition
Suivez ces étapes pour créer cette requête minimale CreateHostedCheckout/CreatePayment pour cette commande :
- Créez un objet de orderLineDetails pour l'ordinateur portable. Définissez le prix net d'origine du produit pour l'ordinateur portable : productPrice=50000. Définissez quantity=1 pour facturer un seul ordinateur.
- Définissez une remise de 50,00€ en définissant discountAmount=5000. Ne modifiez pas productPrice : Cette remise sera prise en compte sur la page de paiement de notre/de votre fournisseur tiers. Néanmoins, assurez-vous de définir le montant correct dans les propriétés
order.amountOfMoney.amount
shoppingCart.items.amountOfMoney.amount
lineAmountTotal - Calculez la TVA de 21% sur le montant net, y compris la remise :
Obtenez le montant net incluant la remise : 500,00€ - 50,00€ = 450,00€
Obtenez la TVA de ce montant (450,00€ * 0,21 = 94,50€) et définissez taxAmount=9450 en conséquence. - Obtenez le prix brut final (y compris remise/TVA) pour l'ordinateur portable
450,00€ + 94,50€ = 544,50€
et définissez shoppingCart.orderLineDetails.lineAmountTotal=54450 en conséquence. - Créez un objet de orderLineDetails pour les frais d'expédition.
Définissez le prix net d'origine du produit (10,00€) pour les frais d'expédition (productPrice=1000)
Définissez quantity=1 pour le facturer une seule fois. - Calculez la TVA de 21% basée sur le coût d'expédition net :
10,00€ * 0,21 = 2,10€ et définissez taxAmount=210 en conséquence. -
Obtenez le prix brut final (y compris la TVA) pour les frais d'expédition.
10,00€ + (10,00€ * 0,21) = 12,10€
et définissez shoppingCart.orderLineDetails.lineAmountTotal=1210
- Calculez le montant total de tout le panier, composé de orderLineDetails.lineAmountTotal pour l'ordinateur portable et le coût d'expédition
orderLineDetails.lineAmountTotal=54450 (Ordinateur portable)
orderLineDetails.lineAmountTotal=1210 (Frais d'expédition)et définissez shoppingCart.items.amountOfMoney.amount=55660 en conséquence
La requête complète ressemble à ceci :
{
"order": {
"amountOfMoney": {
"currencyCode": "EUR",
"amount": 55660
},
"shoppingCart": {
"items": [
{
"amountOfMoney": {
"currencyCode": "EUR",
"amount": 54450
},
"orderLineDetails": {
"productName": "Laptop",
"discountAmount":5000,
"lineAmountTotal": 54450,
"productCode": "TEST01",
"productPrice": 50000,
"productType": "",
"quantity": 1,
"taxAmount": 9450,
"unit": "piece"
}
},
{
"amountOfMoney": {
"currencyCode": "EUR",
"amount": 1210
},
"orderLineDetails": {
"productName": "Shipping cost",
"lineAmountTotal": 1210,
"productCode": "TEST02",
"productPrice": 1000,
"productType": "",
"quantity": 1,
"taxAmount": 210,
"unit": "piece"
}
}]
}
}
}
La page de paiement détaillera alors les prix, les types de coûts et le montant total des taxes comme défini dans la requête.

L'image ci-dessus montre comment Paypal décompose les prix, les types de coûts et le montant total des taxes sur leur page de paiement.
B) Commande avec livraison gratuite
Ce exemple comprend :
- Deux consoles de jeu, chacune pour un prix net de 110,00€
- Une remise de 10,00€ sur chaque console
- 21,00€ de TVA à 21% sur chaque console
- Livraison gratuite
Suivez ces étapes pour créer cette requête minimale CreateHostedCheckout/CreatePayment pour cette commande :
- Créez un objet de orderLineDetails pour les consoles de jeu. Définissez le prix net d'origine du produit pour une console de jeu : productPrice=11000. Définissez quantity=2 pour en facturer deux.
- Définissez une remise de 10,00€ pour chaque console en définissant discountAmount=1000. Ne modifiez pas productPrice : Cette remise sera prise en compte sur la page de paiement de notre/de votre fournisseur tiers. Néanmoins, assurez-vous de définir le montant correct dans les propriétés
order.amountOfMoney.amount
shoppingCart.items.amountOfMoney.amount
lineAmountTotal - Calculez la TVA de 21% basée sur le montant net des deux consoles, y compris la remise :
Obtenez le montant total des deux consoles : (110,00€ - 10,00€) * 2 = 200,00€
Obtenez la TVA de ce montant total : 200,00€ * 0,21 = 42,00€
Obtenez la TVA par console (42,00€ / 2 = 21,00€) et définissez taxAmount=2100 en conséquence -
Obtenez le prix brut final (y compris remise/TVA) pour les deux consoles
(110,00€ - 10,00€) * 2 + 21,00€ * 2 = 242,00€
et définissez shoppingCart.orderLineDetails.lineAmountTotal=24200 en conséquence
- Créez un objet de orderLineDetails pour les frais d'expédition.
Définissez le prix net d'origine du produit (i.e. 4,13€) pour les frais d'expédition (productPrice=413)
Définissez quantity=1 pour le facturer une seule fois - Définissez une remise qui annule les frais de livraison nets (4,13€), entraînant discountAmount = productPrice.
Ne modifiez pas productPrice : Cette remise sera prise en compte sur la page de paiement de notre/de votre fournisseur tiers. Néanmoins, assurez-vous de définir le montant correct dans les propriétés
order.amountOfMoney.amount
shoppingCart.items.amountOfMoney.amount
lineAmountTotal - Calculez la TVA de 21% basée sur le montant net des frais d'expédition, y compris la remise.
Obtenez le montant total des frais d'expédition. Comme la remise est égale au prix d'origine, le montant total est de 0,00€ :
4,13€ – 4,13€ = 0,00€
Obtenez la TVA de ce montant total : (0,00€ * 0,21 = 0,00€) et définissez taxAmount=0 en conséquence -
Obtenez le prix brut final (y compris TVA/remise) pour les frais d'expédition
(4,13€ – 4,13€) + 0,00€ = 0,00€
et définissez shoppingCart.orderLineDetails.lineAmountTotal=0
-
Calculez le montant total de tout le panier, composé de orderLineDetails.lineAmountTotal pour les deux consoles et le coût d'expédition
orderLineDetails.lineAmountTotal=24200 (Consoles de jeu)
orderLineDetails.lineAmountTotal=0 (Frais de port gratuits)et définissez shoppingCart.items.amountOfMoney.amount=24200 en conséquence.
La requête complète ressemble à ceci :
{
"order": {
"amountOfMoney": {
"currencyCode": "EUR",
"amount": 24200
},
"shoppingCart": {
"items": [
{
"amountOfMoney": {
"currencyCode": "EUR",
"amount": 24200
},
"orderLineDetails": {
"productName": "Consoles de jeu",
"discountAmount":1000,
"lineAmountTotal": 24200,
"productCode": "TEST01",
"productPrice": 11000,
"productType": "",
"quantity": 2,
"taxAmount": 2100,
"unit": "piece"
}
},
{
"amountOfMoney": {
"currencyCode": "EUR",
"amount": 0
},
"orderLineDetails": {
"productName": "Livraison (Gratuite)",
"discountAmount":413,
"lineAmountTotal": 0,
"productCode": "TEST02",
"productPrice":413,
"productType": "",
"quantity": 1,
"taxAmount": 0,
"unit": "piece"
}
}]
}
}
}
La page de paiement détaillera alors les prix, les types de coûts et le montant total des taxes comme défini dans la requête.

L'image ci-dessus montre comment Paypal décompose les prix, les types de coûts et le montant total des taxes sur leur page de paiement.