En este artículo, aprenderá a transmitir descuentos y recargos al RetailForce Middleware.
Requisitos previos
- Conocimientos básicos sobre el modelo de documentos de RetailForce
Información
Descuentos y recargos admitidos
Actualmente, los descuentos y recargos pueden transferirse en la payload del documento de la siguiente manera:
- Como parte de la posición de cada artículo y, por lo tanto, como descuento o recargo para el artículo correspondiente
- Dentro de una posición de tipo «Total» (Nota: véanse más abajo las consideraciones especiales)
- Como partida independiente de descuento o recargo
Nota: Es posible que la opción 2 no esté disponible en todos los países. Consulte fiscalCountryProperties para conocer la situación del país en cuestión.
Actualmente no se admite la transferencia de descuentos o recargos en todas las posiciones de artículo a través de subtotales o totales. Todos los descuentos y recargos deben asignarse a todas las posiciones.
No obstante, es posible transferir múltiples descuentos o recargos por artículo.
Importante: La suma de todos los valores de descuento o recargo por artículo debe ser igual a la diferencia entre «GrossValue» y «BaseGrossValue»; de lo contrario, la validación fallará.
Posible transferencia de descuentos y recargos
Variante 1
Los descuentos o recargos se incluyen en la posición de artículo correspondiente en la matriz «Discounts».
Ejemplo:
El siguiente ejemplo muestra únicamente un extracto y no la posición completa del artículo.
"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,Puede encontrar más detalles sobre los elementos individuales en el artículo «Objeto de posición: posiciones».
En el ejemplo anterior, se aplica un descuento del 10 % («TypeValue: 10»). El «DiscountValue» se calcula a partir del «BaseGrossValue» (valor antes del descuento). Para calcular el «GrossValue», se resta el «DiscountValue» del «GrossValue».
Recargos
Al transferir recargos, tenga en cuenta lo siguiente:
- «DiscountValue» y «TypeValue» se consideran valores NEGATIVOS en el caso de los recargos.
Tipos de descuentos y recargos
«Discounts.Type» especifica el tipo de descuento o recargo:
| Tipo | Descripción | Elemento |
| descuento/recargo como suma |
El descuento o recargo se especifica como un valor fijo, por ejemplo, «descuento de 15 EUR» o «comisión de servicio de 5 EUR». En este caso, «DiscountValue» y «TypeValue» tienen el mismo valor. |
"Type": "[0] = Allowance" o bien: "Type": 0 |
| descuento o recargo porcentual |
El recargo o descuento se especifica como un valor porcentual, por ejemplo, «10 % de descuento en los artículos» o «5 % de comisión de servicio». En este caso, «TypeValue» especifica el valor porcentual, calculándose «DiscountValue» a partir del «BaseGrossValue» correspondiente del artículo. Nota: En el caso de los descuentos porcentuales, «DiscountValue» debe calcularse siempre con 4 decimales. |
"Type": "[1] = Discount" o bien: "Type": 1 |
Descuentos o recargos múltiples
La matriz «Discounts» puede contener varios descuentos o recargos.
El orden en el que se aplican los descuentos o recargos individuales para calcular el «GrossValue» viene definido por «DiscountOrder», y el primer descuento que se aplica tiene el valor «0».
Ejemplo de descuentos múltiples:
En el siguiente ejemplo, primero se aplica un descuento porcentual del 10 % a un artículo, seguido de un descuento 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,Característica especial de la posición «Total»
Los descuentos o recargos también pueden transferirse como parte de una partida «Total» (partida de suma).
No obstante, cabe señalar que NO basta con indicarlo simplemente en la partida «Total». El descuento debe distribuirse proporcionalmente entre las distintas partidas. Por ejemplo, si en la partida «Total» figura un descuento del 10 %, las partidas individuales también deben mostrar un descuento del 10 %.
Ejemplo:
{
"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
En la mayoría de los países, los descuentos y recargos también pueden transferirse como partidas independientes. El descuento o recargo se tiene en cuenta como parte del cálculo del total del documento.
Los descuentos se registran como valores negativos, y los recargos, como valores positivos.
Dichos descuentos o recargos se definen mediante el «BusinessTransactionType»: «[1] = Descuento».
Ejemplo:
En el siguiente ejemplo, se muestra un descuento de 12 EUR como partida independiente.
{
"PositionNumber": 1,
"Type": 3,
"Caption": "Discount",
"Identifier": "Discount",
"BusinessTransactionType": 1,
"VatIdentification": 1,
"VatPercent": 20.0,
"NetValue": -10.0,
"GrossValue": -12.0,
"TaxValue": -2.0
}
Este artículo ha sido traducido automáticamente.
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.