Estoy investigando la implementación de ciertas reglas fiscales específicas para Argentina.
Un pequeño contexto:
- Básicamente, existen 2 reglas de IVA según el tipo de producto: 21% y 10.5%, son mutuamente excluyentes
- Existen varias reglas impositivas basadas en el tipo de cliente y la provincia de facturación que no tienen relación alguna con los productos y se calculan en función del monto del pedido cuando el pedido excede un monto imponible mínimo.
Los primeros son bastante directos.
Los segundos son complicados. Se llaman "percepciones" (por toda la investigación que he hecho, la traducción más cercana es "colección en la fuente") y la idea detrás de ellas es que la tienda actúa como el IRS y cobra un poco más al cliente que luego el cliente deducirá de un determinado impuesto anual o mensual.
Por ejemplo, supongamos un producto valorado en $ 200.00 (sin impuestos) con 21% de IVA. La tienda tiene que recaudar un ingreso bruto del 2% en origen en pedidos de $ 100 y más, por lo que el detalle del pedido sería:
- 1 x producto = $ 200.00
- IVA 21% = $ 42.00
- Ingresos brutos 2% = $ 4.00
- Total cargado = $ 246.00
Por supuesto, la tasa del 2% es variable según la dirección de facturación del cliente y el tipo de cliente (las empresas tienen tasas e impuestos diferentes a las personas).
Supongo que lo que realmente me está matando es la cantidad mínima que no se puede configurar a través de Magento.
Además, dejando a un lado la cantidad mínima, la combinación múltiple de impuestos a los productos e impuestos a los clientes llevaría a tener que crear una regla para cada combinación posible.
Por ejemplo, un cliente podría estar exento de pagar el IVA, pero no el impuesto sobre los ingresos brutos.
Realmente agradecería cualquier idea que me puedan dar sobre cómo abordar esto, estoy en "modo de lluvia de ideas" en este momento.
Por el momento, estoy considerando seriamente ignorar el motor de impuestos de Magento por completo y simplemente colocar una codificación total personalizada de toda esta lógica (tal vez configure algún panel en el back-end para cambiar los parámetros)
Gracias