Dans cet article, vous apprendrez comment transmettre les remises et les suppléments au RetailForce Middleware.
Prérequis
- Connaissances de base du modèle de document RetailForce
Informations
Remises et majorations prises en charge
Actuellement, les remises et les majorations peuvent être transférées dans le payload du document comme suit :
- au niveau de la DocumentPosition individuelle, et donc sous forme de remise ou de majoration affectant l’article concerné
- Au sein d’une ligne de type « Total » (Remarque : voir ci-dessous pour les particularités)
- Sous la forme d’une ligne distincte de remise/majoration
Remarque : l’option 2 peut ne pas être prise en charge dans tous les pays. Consultez fiscalCountryProperties pour le pays concerné.
Le transfert de remises/suppléments sur l’ensemble des lignes d’article via des sous-totaux ou des totaux n’est actuellement pas pris en charge. Toutes les remises et tous les suppléments doivent être répartis sur l’ensemble des lignes.
Toutefois, plusieurs remises ou majorations peuvent être appliquées par article.
Important : la somme de toutes les valeurs de remise ou de majoration par article doit être égale à la différence entre « GrossValue » et « BaseGrossValue », faute de quoi la validation échouera.
Transfert possible des remises et des majorations
Variante 1
Les remises ou majorations sont intégrées dans la ligne de produit correspondante, au sein du tableau « Remises ».
Exemple :
L’exemple suivant ne présente qu’un extrait et non la ligne de poste complète.
"BaseNetValue": 123.08,
"BaseGrossValue": 147.70,
"BaseTaxValue": 24.62,
"VatIdentification": 1,
"VatPercent": 20.0,
"Discounts": [
{
"DiscountValue": 14.7700,
"Caption": "Regular customer discount 10%",
"DiscountOrder": 0,
"Type": 1,
"TypeValue": 10,
"PromotionKeys": null,
"Identifier": "SKR-10"
}
],
"NetValue": 110.78,
"GrossValue": 132.93,
"TaxValue": 22.16,Vous trouverez des détails sur les différents éléments dans l’article « Positions » consacré à l’objet de position.
Dans l’exemple ci-dessus, une remise de 10 % (« TypeValue : 10 ») est appliquée. La « DiscountValue » est calculée à partir de la « BaseGrossValue » (valeur avant remise). Pour calculer la « GrossValue », la « DiscountValue » est soustraite de la « GrossValue ».
Suppléments
Lors du transfert des suppléments, veuillez noter ce qui suit :
- « DiscountValue » et « TypeValue » sont des valeurs NÉGATIVES dans le cas des suppléments !
Types de remises et de suppléments
« Discounts.Type » précise le type de remise ou de supplément :
| Type | Description | Élément |
| réduction / supplément sous forme de somme |
La remise ou le supplément est défini comme une valeur fixe, par exemple « remise de 15 EUR » ou « frais de service de 5 EUR ». Dans ce cas, « DiscountValue » et « TypeValue » prennent la même valeur. |
"Type": "[0] = Allowance" ou : "Type": 0 |
| remise/supplément en pourcentage |
La majoration/remise est indiquée sous forme de pourcentage, par exemple « 10 % de remise sur les articles » ou « 5 % de frais de service ». Dans ce cas, « TypeValue » indique la valeur en pourcentage, tandis que « DiscountValue » est calculé à partir de la « BaseGrossValue » correspondante de l’article. Remarque : dans le cas des remises en pourcentage, « DiscountValue » doit toujours être calculé avec 4 décimales ! |
"Type": "[1] = Discount" ou : "Type": 1 |
Remises/suppléments multiples
Le tableau « Discounts » peut contenir plusieurs remises/suppléments.
L’ordre dans lequel les remises ou majorations individuelles sont appliquées pour calculer la « GrossValue » est défini par « DiscountOrder », la première remise à appliquer ayant la valeur « 0 ».
Exemple de remises multiples :
Dans l’exemple suivant, une remise en pourcentage de 10 % est d’abord appliquée à un article, puis une remise de 5 EUR.
"BaseNetValue": 123.08,
"BaseGrossValue": 147.70,
"BaseTaxValue": 24.62,
"VatIdentification": 1,
"VatPercent": 20.0,
"Discounts": [
{
"DiscountValue": 14.7700,
"Caption": "Regular customer discount 10%",
"DiscountOrder": 0,
"Type": 1,
"TypeValue": 10,
"PromotionKeys": null,
"Identifier": "SKR-10"
},
{
"DiscountValue": 5.0000,
"Caption": "Special discount 5 EUR",
"DiscountOrder": 1,
"Type": 0,
"TypeValue": 5.0,
"PromotionKeys": null,
"Identifier": "SKR-10"
}
],
"NetValue": 106.61,
"GrossValue": 127.93,
"TaxValue": 21.32,Caractéristique particulière de la position « Total »
Les remises ou majorations peuvent également être reportées dans le cadre d’un poste « Total » (poste de totalisation).
Il convient toutefois de noter qu’il ne suffit PAS de simplement l’indiquer dans le poste « Total ». La remise doit être répartie proportionnellement entre les différents postes. Par exemple, si une remise de 10 % est indiquée sur le poste « Total », les postes individuels doivent également afficher une remise de 10 %.
Exemple :
{
"PositionNumber": 1,
"Type": 10,
"Rounding": null,
"BaseValue": 147.70,
"Value": 132.93,
"Discounts":[
{
"Identifier": "SKR-10",
"Caption": "Regular customer discount 10%",
"Type": 1,
"DiscountOrder": 0,
"DiscountValue": 14.7700,
"TypeValue": 10
}
],
"Caption": "Summe"
}
Variante 2
Dans la plupart des pays, les remises et les majorations peuvent également être reportées sous forme de postes distincts. La remise ou la majoration est prise en compte dans le calcul du total du document.
Les remises sont saisies sous forme de valeurs négatives, les majorations sous forme de valeurs positives.
Ces remises ou majorations sont définies via le « BusinessTransactionType » : « [1] = Remise ».
Exemple :
Dans l’exemple suivant, une remise de 12 EUR est indiquée sous forme de ligne distincte.
{
"PositionNumber": 1,
"Type": 3,
"Caption": "Discount",
"Identifier": "Discount",
"BusinessTransactionType": 1,
"VatIdentification": 1,
"VatPercent": 20.0,
"NetValue": -10.0,
"GrossValue": -12.0,
"TaxValue": -2.0
}
Cet article a été traduit automatiquement.
Commentaires
0 commentaire
Vous devez vous connecter pour laisser un commentaire.