Free cookie consent management tool by TermsFeedAktualizacja preferencji plików cookie

Kowal Shipping Rules - extensión de Magento 2 para métodos de envío, restricciones de entrega y cargos adicionales.

61,50 € 50,00 €
Instalacja COMPOSER
M2-SHIPPING-RULES
  • 2.4.9
  • 2.4.8
  • 2.4.7
  • 2.4.6
  • 2.4.5
  • 2.4.4
  • 2.4.3
  • 2.4.2
  • 2.4.1
  • 2.4.0
  • 2.3.7
  • 2.3.6
  • 2.3.5
  • 2.3.4

El envío en una tienda online rara vez es sencillo. Las configuraciones estándar de Magento funcionan bien en escenarios simples, pero rápidamente se vuelven insuficientes cuando la tienda vende productos con distintos tamaños, pesos, requisitos de transporte o costes de manipulación. En la práctica, esto significa la necesidad de ocultar determinados métodos de entrega, añadir cargos por embalaje, aplicar excepciones a productos concretos y crear reglas dependientes del país, del valor del carrito o de los atributos del producto.

Kowal ShippingRules se creó para gestionar este tipo de reglas en un único módulo. La extensión reúne tres áreas que a menudo están repartidas entre varios complementos independientes: métodos de envío, restricciones de métodos de entrega y extra fee. De este modo, la tienda puede gestionar la lógica de entrega de una forma más ordenada y previsible.

El módulo permite crear métodos de envío propios en Magento 2, asignarles tarifas, definir cuándo debe estar visible un método, bloquear opciones de entrega no disponibles y añadir cargos adicionales solo cuando estén justificados por las condiciones del pedido. Las reglas pueden basarse en los datos del carrito, la dirección de entrega, el método de envío seleccionado y los atributos de los productos.

El mayor valor del módulo es el control. El administrador de la tienda puede definir reglas que adapten automáticamente los métodos de entrega disponibles y los cargos al pedido concreto. El cliente ve opciones de entrega más adecuadas y el equipo de la tienda reduce la cantidad de ajustes manuales tras realizarse el pedido.

Problema que resuelve el módulo

En muchas tiendas Magento 2, el coste y la disponibilidad de la entrega dependen de más factores que el propio valor del carrito. Los productos pueden variar en peso, tamaño, forma de embalaje, categoría, tipo de transporte o riesgo de daño. Además, la tienda puede tener reglas diferentes para determinados países, regiones, códigos postales, grupos de clientes o métodos de envío.

Sin reglas dedicadas, aparecen problemas habituales:

  • el cliente elige un locker para un producto que no cabe en él,
  • la tienda asume costes adicionales en el envío de productos pesados o voluminosos,
  • el equipo tiene que contactar con el cliente después de realizar el pedido,
  • parte de las reglas se mantienen manualmente fuera de Magento,
  • los cargos logísticos no son visibles en el carrito antes de la compra,
  • los métodos de envío se muestran aunque no deberían estar disponibles,
  • las reglas de entrega están repartidas entre varios módulos y son difíciles de mantener.

Kowal ShippingRules organiza estas situaciones. El módulo permite trasladar las reglas logísticas al panel de Magento y aplicarlas automáticamente durante la selección del envío.

¿Qué distingue a Kowal ShippingRules?

Un módulo en lugar de varias extensiones independientes

Kowal ShippingRules combina la gestión de métodos de envío, restricciones y cargos adicionales. Gracias a ello, la tienda no necesita mantener un módulo independiente para tablas de tarifas, otro módulo para bloquear métodos de entrega y otro más para extra fee.

Reglas basadas en los datos del pedido

Las decisiones pueden depender del contenido del carrito, los atributos de los productos, el valor del pedido, el peso, la cantidad de productos, la ubicación de la entrega y el método de envío seleccionado. Esto permite crear escenarios logísticos reales, y no solo tarifas simples por país o peso.

Mayor transparencia para el cliente

El cliente ve métodos de entrega adaptados al pedido. Si un método no está disponible, la tienda puede ocultarlo o mostrar un mensaje con el motivo de la falta de disponibilidad. Esto reduce el número de malentendidos durante la finalización de la compra.

Mejor control de los costes operativos

Los cargos adicionales pueden aplicarse solo en casos seleccionados: para productos voluminosos, delicados, que requieren embalaje especial o para métodos de entrega concretos. De este modo, la tienda puede recuperar costes logísticos que antes quedaban ocultos en el margen.

Preparado para la migración desde Amasty

El módulo se ha diseñado como una solución independiente, pero tiene en cuenta el escenario de transición desde módulos de Amasty utilizados para envío, restricciones y extra fee. Gracias a ello, puede utilizarse como dirección de consolidación de la configuración de entrega en un solo módulo.

¿Para quién es este módulo?

Kowal ShippingRules está pensado para tiendas Magento 2 que necesitan mayor flexibilidad en la gestión de la entrega de la que ofrece la configuración estándar de Magento.

El módulo será especialmente útil para tiendas que:

  • venden productos pesados, delicados, largos, frágiles o de gran volumen,
  • tienen distintas reglas de entrega para diferentes categorías de productos,
  • necesitan ocultar métodos de envío no disponibles,
  • añaden cargos por embalaje, transporte especial o gestión logística,
  • quieren crear sus propios métodos de entrega sin trabajo de desarrollo en cada caso,
  • utilizan reglas dependientes de los atributos de los productos,
  • quieren limitar la gestión manual de excepciones después de realizar el pedido,
  • planean organizar o sustituir varios módulos responsables del envío.

Funciones principales

Creación de métodos de envío propios

El módulo permite crear métodos de envío gestionados directamente desde el panel de Magento. Cada método puede tener su propio nombre, código, descripción, orden de clasificación, estado de actividad y condiciones de disponibilidad.

Ejemplos:

  • Entrega en palé para productos pesados,
  • Transporte especial para productos que requieren protección,
  • Mensajería para voluminosos para categorías seleccionadas,
  • Entrega local para códigos postales seleccionados,
  • Recogida logística para pedidos no estándar.

Tarifas de envío según condiciones

A los métodos se les pueden asignar tarifas dependientes de los parámetros del pedido. Las tarifas pueden filtrarse, entre otros, por país, región, código postal, subtotal, peso, cantidad de productos y tipo de envío.

Ejemplos:

  • precio de entrega distinto para pedidos por encima de un peso determinado,
  • tarifa independiente para países seleccionados,
  • precio dependiente del valor del carrito,
  • tarifas diferentes para productos estándar y voluminosos,
  • prioridad de tarifas cuando varias reglas coinciden al mismo tiempo.

Restricciones de métodos de entrega

Kowal ShippingRules permite limitar la disponibilidad de los métodos de envío. La regla puede ocultar el método o mostrar al cliente un mensaje indicando que esa forma de entrega no está disponible para ese pedido.

Ejemplos:

  • ocultar el locker para productos demasiado grandes,
  • bloquear el envío internacional para productos seleccionados,
  • ocultar el método exprés para pedidos con productos que requieren preparación,
  • mostrar el mensaje: Esta forma de entrega no está disponible para productos voluminosos.

Extra Fee, es decir, cargos adicionales

El módulo permite aplicar cargos adicionales basados en reglas. El extra fee puede aplicarse al carrito completo, a cada unidad de producto o a productos que cumplan condiciones concretas.

Ejemplos:

  • cargo por embalaje no estándar,
  • cargo por transporte de gran volumen,
  • suplemento para productos que requieren protección adicional,
  • cargo logístico para un método de entrega concreto,
  • suplemento para pedidos a regiones seleccionadas.

Condiciones similares a las reglas de Magento

Kowal ShippingRules utiliza un generador de condiciones conocido en Magento. Para las personas que gestionan la tienda, esto significa una forma de trabajo similar a la configuración de promociones del carrito: seleccionar condición, operador y valor.

Las condiciones pueden referirse a:

  • SKU,
  • categoría del producto,
  • tipo de producto,
  • peso,
  • precio,
  • atributos de producto seleccionados,
  • valor del carrito,
  • cantidad de productos,
  • país de entrega,
  • región,
  • ciudad,
  • código postal,
  • código de cupón,
  • método de envío seleccionado.

Beneficios para el negocio

Reducción de pérdidas en el envío

No todos los pedidos cuestan lo mismo en gestión logística. Los productos voluminosos, delicados o que requieren embalaje especial suelen generar costes adicionales. Kowal ShippingRules permite añadir estos costes de forma controlada, en lugar de ocultarlos en el margen o gestionarlos manualmente después del pedido.

Menos pedidos erróneos

Si el cliente elige un método de entrega que no encaja con el producto, la tienda tendrá que resolver el problema manualmente más tarde. El módulo limita este tipo de situaciones, ya que puede ocultar métodos no disponibles antes incluso de realizar el pedido.

Mejor comunicación con el cliente

En lugar de eliminar un método sin explicación, la tienda puede mostrar un mensaje al cliente. Esto resulta especialmente útil cuando la limitación se debe a las características del producto, la ubicación o los requisitos de transporte.

Gestión de pedidos más rápida

Las reglas automáticas reducen la cantidad de excepciones gestionadas por el departamento comercial o de logística. Si la tienda define claramente las reglas de entrega en la fase de carrito, habrá menos casos que requieran corrección tras la compra.

Un solo lugar para gestionar el envío

Los métodos, las restricciones y los cargos adicionales están relacionados entre sí. Mantenerlos en un único módulo reduce el riesgo de conflictos y facilita el control de la configuración.

Ejemplos de escenarios de uso

Tienda con productos de gran volumen

La tienda vende productos que no se pueden enviar por mensajería estándar ni a un locker. El administrador puede marcar estos productos con un atributo y después preparar una regla que oculte el locker, muestre la entrega en palé y añada un cargo por volumen.

Resultado: el cliente ve de inmediato el método de entrega correcto y la tienda no tiene que contactar con él después de la compra para solicitar un suplemento.

Tienda con productos delicados

Los productos que requieren protección adicional pueden generar un coste de embalaje. El módulo permite añadir el cargo solo cuando en el carrito haya un producto que cumpla la condición.

Resultado: la tienda recupera el coste del embalaje y el cliente conoce el precio completo antes de realizar el pedido.

Tienda con entrega local

La tienda puede ofrecer el método Entrega local solo para determinados códigos postales o regiones. Para el resto de ubicaciones, el método no será visible.

Resultado: el cliente no seleccionará una entrega que la tienda no pueda realizar.

Tienda B2B

En la venta B2B, el coste de entrega puede depender del grupo de clientes, el valor del pedido, la región o el tipo de productos. El módulo permite preparar reglas que se ajusten mejor a la política comercial de la tienda.

Resultado: la tienda puede aplicar reglas diferentes para distintos tipos de clientes sin mantener varios procesos independientes.

Tienda con envío internacional

Es posible que determinados productos no estén disponibles para envío internacional. El módulo permite limitar los métodos de entrega para países concretos o condiciones de producto determinadas.

Resultado: la tienda reduce el riesgo de pedidos que no puede completar de acuerdo con el reglamento o las limitaciones del transportista.

Suplemento para un método de envío concreto

Si el método de entrega seleccionado genera un coste adicional de gestión, se le puede asociar un extra fee.

Resultado: el cargo aparece solo cuando el cliente selecciona un método de envío concreto.

Ejemplos de reglas que se pueden configurar

  • Si el producto tiene el atributo gabaryt, oculta el locker.
  • Si el peso del carrito supera el límite establecido, muestra la entrega en palé.
  • Si el país de entrega está fuera de Polonia, oculta métodos seleccionados.
  • Si en el carrito hay un producto de la categoría delicados, añade un cargo por embalaje.
  • Si el valor del carrito está por debajo del importe establecido, aplica un cargo logístico adicional.
  • Si el cliente selecciona transporte especial, añade extra fee.
  • Si el código postal no pertenece a la zona atendida, oculta la entrega local.
  • Si el pedido contiene un producto de un tipo determinado, muestra solo métodos de entrega seleccionados.

¿Cómo es trabajar con el módulo?

El administrador de la tienda trabaja en el panel de Magento. Primero crea un método de envío y luego le asigna tarifas y condiciones. Si se necesitan limitaciones, puede añadir una restricción para un método concreto o un grupo de métodos. Si el pedido debe incluir un cargo adicional, el administrador crea una regla de extra fee.

Proceso de ejemplo:

  1. Crea el método Entrega en palé.
  2. Añade una tarifa para el país Polonia y un peso superior al límite definido.
  3. Añade la condición de que el método se aplique a productos con el atributo shipping_type = pallet.
  4. Añade una restricción que oculte el locker para esos mismos productos.
  5. Añade un extra fee por la gestión del transporte especial.
  6. Comprueba un carrito de prueba y confirma que el cliente ve las opciones correctas.

Comparación del enfoque

Configuración estándar de Magento

Magento estándar permite configurar métodos de entrega básicos, pero los escenarios más complejos requieren extensiones adicionales o modificaciones a medida.

Varios módulos independientes

La tienda puede utilizar un módulo independiente para tarifas, otro para restricciones y otro para cargos. El problema entonces es mantener la coherencia entre las configuraciones.

Kowal ShippingRules

Kowal ShippingRules reúne métodos, restricciones y extra fee en un único módulo. Gracias a ello, las reglas de entrega son más fáciles de entender, mantener y probar.

Elementos que influyen en el SEO de la tienda

El módulo no es una herramienta SEO de forma directa, pero puede apoyar indirectamente la experiencia de compra, que influye en la conversión y en la calidad de la tienda:

  • el cliente ve antes los costes reales de entrega,
  • el checkout es más previsible,
  • menos pedidos requieren corrección después de la compra,
  • la tienda puede comunicar claramente las limitaciones logísticas,
  • las reglas de entrega son más coherentes con la oferta de productos.

Una mejor gestión de la entrega puede reducir el número de carritos abandonados causados por costes poco claros o métodos de envío no disponibles.

Kowal ShippingRules — guía de instalación, configuración y uso

Objetivo del documento

Este documento describe la implantación práctica y el uso del módulo Kowal_ShippingRules en Magento 2. Está destinado a las personas responsables de la instalación del módulo, la configuración de la tienda, las pruebas de implantación y la gestión diaria de las reglas de envío.

El documento incluye:

  • instalación del módulo,
  • configuración básica,
  • creación de métodos de envío,
  • configuración de tarifas,
  • gestión de restricciones de métodos de entrega,
  • gestión de cargos adicionales Extra Fee,
  • diagnóstico,
  • migración desde módulos de Amasty,
  • checklist de pruebas tras la implantación.

Información básica

Nombre técnico del módulo:

Kowal_ShippingRules

Ubicación del módulo:

app/code/Kowal/ShippingRules

Código del carrier:

kowal_shippingrules

El código del método de envío en checkout tiene el formato:

kowal_shippingrules_

Ejemplo:

kowal_shippingrules_dostawa_paletowa

Requisitos previos a la instalación

Antes de la instalación se debe confirmar:

  • la tienda funciona con Magento 2.4.x,
  • el entorno utiliza PHP >=8.1,
  • el módulo Kowal_Base está disponible,
  • se ha realizado una copia de seguridad de los archivos y de la base de datos,
  • la implantación se realiza primero en un entorno de pruebas o staging,
  • tras la instalación será posible ejecutar setup:upgrade y setup:di:compile,
  • la persona que realiza las pruebas tiene acceso al panel de administración y al checkout.

Instalación del módulo

1. Carga el módulo

El módulo debe encontrarse en el directorio:

app/code/Kowal/ShippingRules

2. Activa el módulo

bin/magento module:enable Kowal_ShippingRules

Si Kowal_Base aún no está activado, debe activarse antes o junto con el módulo:

bin/magento module:enable Kowal_Base Kowal_ShippingRules

3. Actualiza la base de datos

bin/magento setup:upgrade

Este comando crea las tablas del módulo y añade las columnas necesarias para la gestión de Extra Fee en quote, order, invoice y creditmemo.

4. Compila DI

En producción:

bin/magento setup:di:compile

5. Limpia la caché

bin/magento cache:flush

6. Comprueba el estado del módulo

bin/magento module:status Kowal_ShippingRules

El módulo debe aparecer en la lista de módulos activos.

Comprobación tras la instalación

Después de la instalación, ejecuta el diagnóstico:

bin/magento kowal:shippingrules:stabilization:check

Versión completa en JSON:

bin/magento kowal:shippingrules:stabilization:check --json

El comando es read-only y no modifica datos. Comprueba, entre otras cosas:

  • la presencia de las tablas del módulo,
  • el número de registros,
  • JSON de condiciones incorrecto,
  • métodos activos sin tarifas activas,
  • reglas de Extra Fee con tax class cuando el modo de impuestos está desactivado.

Si el comando devuelve errores, no se debe cambiar el módulo a uso en producción antes de aclararlos.

Configuración básica

Carrier

Ruta en el panel de Magento:

Stores / Configuration / Sales / Delivery Methods / Shipping Methods & Rules

Campos:

  • Enabled — activa o desactiva el carrier kowal_shippingrules.
  • Title — nombre del grupo de métodos visible en checkout.
  • Test Method Name — nombre del método de prueba de configuración.
  • Test Method Price — precio del método de prueba de configuración.
  • Sort Order — orden del carrier en la lista de métodos de entrega.
  • Show Method If Not Applicable — si se debe mostrar un error cuando no haya métodos disponibles.
  • Displayed Error Message — mensaje cuando el método no está disponible.

Configuración más importante:

carriers/kowal_shippingrules/active = 1

Si el carrier está desactivado, los métodos creados en el módulo no estarán disponibles en checkout.

Diagnóstico y funciones de emergencia

Ruta en el panel de Magento:

Stores / Configuration / Sales / Shipping Methods & Rules

Sección General Diagnostics:

  • Enable Debug Logging — guarda detalles de las decisiones en el log.
  • Shadow Mode — modo preparado para comparar el comportamiento durante la migración.

Sección Restrictions:

  • Enable Restrictions — activa o desactiva solo las restricciones.

Sección Extra Fees:

  • Enable Extra Fees — activa o desactiva solo los cargos adicionales.
  • Fee Tax Mode — define la forma de gestionar el impuesto para Extra Fee.

Modos de impuestos disponibles:

  • Do Not Calculate Tax — el módulo no calcula impuesto sobre Extra Fee.
  • Calculate by Fee Tax Class — el módulo calcula el impuesto según la clase fiscal establecida en la regla de fee.

Configuración predeterminada y segura:

kowal_shippingrules/general/debug = 0kowal_shippingrules/general/shadow_mode = 0kowal_shippingrules/restrictions/enabled = 1kowal_shippingrules/fees/enabled = 1kowal_shippingrules/fees/tax_mode = none

Ruta:

Sales / Shipping Methods & Rules

Secciones disponibles:

  • Shipping Methods — métodos de envío y tarifas,
  • Shipping Restrictions — restricciones de métodos de entrega,
  • Extra Fees — cargos adicionales.

Gestión de métodos de envío

¿Cuándo crear un método de envío?

Se debe crear un método de envío cuando la tienda necesite su propia opción de entrega, por ejemplo:

  • entrega en palé,
  • transporte especial,
  • entrega local,
  • mensajería para productos voluminosos,
  • recogida logística,
  • método disponible solo para productos o regiones seleccionados.

Creación del método

Ve a:

Sales / Shipping Methods & Rules / Shipping Methods

Luego selecciona Add New o edita un método existente.

Campos típicos del método:

  • Is Active — si el método está activo.
  • Code — código técnico del método.
  • Name — nombre visible para el cliente.
  • Description — descripción del método.
  • Sort Order — orden de visualización.
  • Store Views — visibilidad por store view.
  • Customer Groups — visibilidad por grupos de clientes.
  • Conditions — condiciones de disponibilidad del método.

Recomendaciones para el campo Code:

  • usa letras minúsculas,
  • no uses caracteres polacos,
  • no uses espacios,
  • usa guiones bajos en lugar de espacios.

Ejemplos:

dostawa_paletowatransport_specjalnykurier_gabarytdostawa_lokalna

El código completo del método en checkout tendrá el prefijo del carrier:

kowal_shippingrules_dostawa_paletowa

Tarifas del método

Un método activo debe tener al menos una tarifa activa. Si el método no tiene una tarifa coincidente, no aparecerá en checkout.

La tarifa puede depender de:

  • país,
  • región,
  • código postal,
  • valor del carrito,
  • peso,
  • cantidad de productos,
  • tipo de envío,
  • prioridad.

Modos de precio:

  • fixed — precio fijo,
  • percent_subtotal — porcentaje del subtotal.

Ejemplos:

  • precio de 29 zł para envíos de hasta 30 kg,
  • precio de 149 zł para entrega en palé,
  • 5% del valor del carrito para transporte especial,
  • tarifa independiente para códigos postales seleccionados.

Condiciones del método

Las condiciones definen cuándo debe estar disponible el método.

Ejemplos:

  • método disponible solo para productos de una categoría seleccionada,
  • método disponible solo con un atributo de producto determinado,
  • método disponible solo para carritos por encima de un valor definido,
  • método disponible solo para un país de entrega seleccionado.

Si las condiciones están vacías, el método solo estará limitado por el estado, store view, customer group y una tarifa coincidente.

Gestión de restricciones de métodos de entrega

¿Cuándo usar restricciones?

Las restricciones sirven para ocultar o bloquear métodos de envío que no deberían estar disponibles para un pedido concreto.

Ejemplos:

  • ocultar el locker para productos voluminosos,
  • bloquear el envío internacional para una categoría seleccionada,
  • mostrar un mensaje indicando que el transporte exprés no está disponible para productos bajo pedido,
  • ocultar un método de entrega para un país seleccionado.

Creación de restricciones

Ve a:

Sales / Shipping Methods & Rules / Shipping Restrictions

Luego selecciona Add New o edita una restricción existente.

Campos típicos:

  • Is Active — si la restricción está activa.
  • Name — nombre interno.
  • Target Carrier — carrier al que se aplica la restricción.
  • Target Method — método al que se aplica la restricción.
  • Action — forma de funcionamiento.
  • Message — mensaje para el cliente.
  • Priority — prioridad.
  • Stop Processing — si debe detenerse la comprobación adicional de reglas.
  • Store Views — alcance por store view.
  • Customer Groups — alcance por grupos de clientes.
  • Conditions — condiciones de coincidencia.

Acciones de restricción

hide:

  • el método se ocultará,
  • el cliente no lo verá,
  • adecuado para restricciones evidentes, por ejemplo un locker para productos voluminosos.

error:

  • el método se mostrará como no disponible,
  • el cliente verá un mensaje,
  • adecuado cuando conviene explicar el motivo de la falta de disponibilidad.

Prioridad y Stop Processing

Las reglas se comprueban según la prioridad. Una prioridad más alta significa una comprobación anterior.

Stop Processing = Yes significa que, después de coincidir con esta restricción, el módulo no comprueba más restricciones para ese método.

Recomendación:

  • usa prioridades más altas para reglas más específicas,
  • usa prioridades más bajas para reglas generales,
  • activa Stop Processing si la regla debe decidir de forma definitiva la disponibilidad del método.

Gestión de Extra Fee

¿Cuándo usar Extra Fee?

Extra Fee sirve para añadir cargos adicionales al pedido.

Ejemplos:

  • cargo por embalaje no estándar,
  • suplemento por transporte de gran volumen,
  • cargo por productos delicados,
  • cargo logístico para un método de entrega concreto,
  • suplemento para regiones seleccionadas.

Creación de Extra Fee

Ve a:

Sales / Shipping Methods & Rules / Extra Fees

Luego selecciona Add New o edita un cargo existente.

Campos típicos:

  • Is Active — si el fee está activo.
  • Name — nombre interno.
  • Label — nombre del cargo visible en totals.
  • Target Carrier — carrier al que se aplica el fee.
  • Target Method — método al que se aplica el fee.
  • Price Type — tipo de precio.
  • Price — valor del cargo.
  • Apply Mode — forma de cálculo.
  • Tax Class ID — clase fiscal, si se utiliza tax mode.
  • Priority — prioridad.
  • Stop Processing — si se debe detener el cálculo adicional del fee.
  • Store Views — alcance por store view.
  • Customer Groups — alcance por grupos de clientes.
  • Conditions — condiciones para aplicar el cargo.

Modos de precio

fixed:

  • importe fijo,
  • por ejemplo, 19 zł por embalaje.

percent_subtotal:

  • porcentaje del valor del carrito,
  • por ejemplo, 3% del valor del pedido.

Modos de aplicación

cart:

  • un solo cargo para todo el carrito.

per_item:

  • cargo multiplicado por la cantidad de productos.

per_matching_item:

  • cargo aplicado solo a productos que cumplan las condiciones.

Ejemplo:

Si el cargo por protección especial es de 5 zł y en el carrito hay 3 productos que cumplen la condición, el modo per_matching_item aplicará 15 zł.

Impuesto de Extra Fee

Por defecto, no se calcula impuesto sobre Extra Fee:

kowal_shippingrules/fees/tax_mode = none

Para calcular el impuesto:

  1. Configura Fee Tax Mode como Calculate by Fee Tax Class.
  2. Completa Tax Class ID en la regla de Extra Fee.
  3. Prueba carrito, order, invoice y creditmemo.

El impuesto de Extra Fee debe comprobarse siempre con la configuración fiscal de la tienda concreta.

Gestión de condiciones

El módulo utiliza un generador de condiciones similar al de las reglas de Magento.

Las condiciones pueden referirse, entre otras cosas, a:

  • atributos de producto,
  • SKU,
  • categoría,
  • tipo de producto,
  • peso,
  • precio,
  • valor del carrito,
  • cantidad de productos,
  • país de entrega,
  • región,
  • ciudad,
  • código postal,
  • cupón,
  • método de envío seleccionado.

Ejemplo de condición para un producto voluminoso

Supuesto:

  • el producto tiene el atributo shipping_type,
  • el valor para gran volumen es pallet.

Regla:

Jeżeli produkt w koszyku ma shipping_type = pallet

Posibles acciones:

  • mostrar el método Dostawa paletowa,
  • ocultar el locker,
  • añadir el fee Transport gabarytowy.

Recomendaciones al trabajar con condiciones

  • crea primero una regla simple y pruébala en el carrito,
  • evita demasiadas condiciones en una sola regla,
  • describe las reglas con nombres claros,
  • para reglas importantes usa atributos de producto inequívocos,
  • después de cambiar atributos de producto, vuelve a probar el carrito.

Diagnóstico y logging

Archivo de log dedicado:

var/log/kowal_shipping_rules.log

El debug se puede activar en:

Stores / Configuration / Sales / Shipping Methods & Rules / General Diagnostics

Activa:

Enable Debug Logging = Yes

Recomendaciones:

  • no dejes debug logging activado permanentemente en producción,
  • activa debug solo durante el diagnóstico,
  • cuando terminen las pruebas, desactiva debug,
  • analiza los logs junto con el carrito de prueba y la configuración de reglas.

Funciones de emergencia

Si se produce un problema tras la implantación, se puede desactivar de forma independiente:

Todo el carrier

Stores / Configuration / Sales / Delivery Methods / Shipping Methods & Rules / Enabled = No

Resultado:

  • los métodos del carrier kowal_shippingrules no estarán disponibles.

Solo restricciones

Stores / Configuration / Sales / Shipping Methods & Rules / Restrictions / Enable Restrictions = No

Resultado:

  • los métodos no se ocultarán ni bloquearán mediante restricciones.

Solo Extra Fee

Stores / Configuration / Sales / Shipping Methods & Rules / Extra Fees / Enable Extra Fees = No

Resultado:

  • no se calcularán cargos adicionales.

Migración desde Amasty

Objetivo de la migración

La migración desde Amasty tiene como objetivo ayudar a trasladar la configuración de restricciones y extra fee a Kowal_ShippingRules.

El módulo de Kowal no requiere Amasty para funcionar con normalidad. Amasty puede utilizarse como fuente de datos de migración y como punto de referencia durante las pruebas.

Fuentes de datos compatibles

El migrador analiza:

amasty_shiprestriction_ruleamasty_extrafeeamasty_extrafee_option

Tablas de destino:

kowal_shipping_restrictionkowal_shipping_fee

Principios de seguridad de la migración

La migración se ha diseñado con cautela:

  • el informe es read-only,
  • dry-run no guarda datos,
  • apply funciona por defecto como preview,
  • el guardado requiere la opción explícita --execute,
  • solo se guardan registros con estado ready,
  • los registros manual_review y unsupported se omiten,
  • la migración es idempotente gracias a los campos migration_source y migration_source_key,
  • la migración no desactiva Amasty,
  • la migración no cambia el tráfico automáticamente.

Paso 1 — informe base

Ejecuta:

bin/magento kowal:shippingrules:amasty:report

El informe se guardará en:

var/report/kowal_shippingrules_amasty_report.json

El informe muestra la presencia y el volumen de las tablas de Amasty y de las tablas de Kowal.

Paso 2 — dry-run de transformación

Ejecuta:

bin/magento kowal:shippingrules:amasty:report --dry-run --limit=100

Dry-run prepara el plan de transformación, pero no guarda nada.

Estados de los registros:

  • ready — el registro puede trasladarse automáticamente,
  • manual_review — el registro requiere análisis manual,
  • unsupported — el registro no es compatible con el migrador automático.

Si el informe contiene muchos manual_review o unsupported, estas reglas deben analizarse antes de apply.

Paso 3 — preview apply

Ejecuta:

bin/magento kowal:shippingrules:amasty:apply --limit=100

Esto aún no guarda datos. El comando muestra cuántos registros se crearían, se omitirían o terminarían con error.

Paso 4 — apply de restricciones

Tras aceptar el preview:

bin/magento kowal:shippingrules:amasty:apply --type=restrictions --limit=100 --execute

El comando guardará solo las restricciones con estado ready.

Paso 5 — apply de Extra Fee

Tras aceptar el preview:

bin/magento kowal:shippingrules:amasty:apply --type=fees --limit=100 --execute

El comando guardará solo los extra fees con estado ready.

Paso 6 — diagnóstico después de la migración

Ejecuta:

bin/magento kowal:shippingrules:stabilization:check

Comprueba también el panel:

Sales / Shipping Methods & Rules / Shipping RestrictionsSales / Shipping Methods & Rules / Extra Fees

Paso 7 — pruebas comparativas con Amasty

Antes de desactivar o sustituir la configuración de Amasty, hay que comparar los resultados para carritos de prueba.

Carritos recomendados:

  • producto estándar,
  • producto voluminoso,
  • producto delicado,
  • varios productos con distintas condiciones,
  • pedido con distintos países de entrega,
  • pedido con distintos códigos postales,
  • pedido con cupón,
  • pedido con un método seleccionado afectado por Extra Fee.

Para cada carrito, comprueba:

  • métodos de envío disponibles,
  • métodos ocultos,
  • mensajes de error,
  • extra fee calculado,
  • importes brutos/netos, si se usa tax fee,
  • order,
  • invoice,
  • creditmemo.

Paso 8 — decisión sobre el cambio

Solo después de aceptar los resultados se puede planificar el cambio de la configuración de producción.

Recomendaciones:

  • no desactives Amasty sin copia de seguridad,
  • no elimines los datos de Amasty inmediatamente después de la migración,
  • primero desactiva el funcionamiento a nivel de configuración,
  • mantén la posibilidad de rollback,
  • prepara una lista de reglas que requieran corrección manual.

Rollback después de la migración

Si surge un problema:

  1. Desactiva el carrier Kowal ShippingRules.
  2. Desactiva Enable Restrictions.
  3. Desactiva Enable Extra Fees.
  4. Restaura la configuración anterior de Amasty.
  5. Comprueba checkout.
  6. Conserva los informes de migración para su análisis.

Checklist después de la implantación

Técnica

  • module:status muestra Kowal_ShippingRules como activo,
  • setup:upgrade ha finalizado sin errores,
  • setup:di:compile ha finalizado sin errores,
  • cache:flush ejecutado,
  • stabilization:check no devuelve errores,
  • el panel de administración muestra el menú Shipping Methods & Rules,
  • el archivo de log se guarda cuando debug está activado.

De configuración

  • el carrier está activado,
  • se ha creado al menos un método de envío,
  • el método activo tiene una tarifa activa,
  • los store views están configurados correctamente,
  • los customer groups están configurados correctamente,
  • las restricciones están activadas o conscientemente desactivadas,
  • los extra fees están activados o conscientemente desactivados,
  • tax mode es coherente con la configuración fiscal de la tienda.

Checkout

  • el método aparece para un carrito que cumple las condiciones,
  • el método no aparece cuando no hay una tarifa coincidente,
  • la restricción hide oculta el método,
  • la restricción error muestra un mensaje,
  • extra fee aparece en totals al seleccionar el método,
  • el cambio del método de envío recalcula el fee,
  • order incluye los importes del fee,
  • invoice incluye los importes del fee,
  • creditmemo reembolsa correctamente el fee.

Problemas más frecuentes

El método no aparece en checkout

Comprueba:

  • si el carrier está activado,
  • si el método está activo,
  • si el método tiene una tarifa activa,
  • si la tarifa coincide con país, región, código postal, peso y subtotal,
  • si el store view es correcto,
  • si el customer group es correcto,
  • si se cumplen las condiciones del método,
  • si una restricción no está ocultando el método.

Extra Fee no se calcula

Comprueba:

  • si Enable Extra Fees = Yes,
  • si el fee está activo,
  • si target carrier y target method son correctos,
  • si se cumplen las condiciones del fee,
  • si se ha seleccionado un método de envío,
  • si el precio del fee es mayor que cero,
  • si Stop Processing de una regla anterior no ha detenido el cálculo posterior.

La restricción no funciona

Comprueba:

  • si Enable Restrictions = Yes,
  • si la restricción está activa,
  • si target carrier y target method son correctos,
  • si se cumplen las condiciones de la restricción,
  • si la prioridad de la regla es la adecuada,
  • si otra regla con Stop Processing no termina el procesamiento antes.

El impuesto de Extra Fee no se calcula

Comprueba:

  • si Fee Tax Mode = Calculate by Fee Tax Class,
  • si la regla de fee tiene configurado Tax Class ID,
  • si la configuración fiscal de Magento devuelve una tasa de impuesto para la dirección,
  • si el carrito tiene dirección de entrega,
  • si el fee se está calculando realmente.

Buenas prácticas

  • Configura primero reglas simples y luego añade más condiciones.
  • Prepara un carrito de prueba para cada regla importante.
  • Usa nombres claros para métodos, restricciones y fees.
  • Evita varias reglas muy similares con la misma prioridad.
  • Documenta el motivo de crear una restricción o un fee en el nombre.
  • Después de cambiar atributos de productos, realiza una prueba de checkout.
  • Activa debug logging solo durante el diagnóstico.
  • Realiza la migración desde Amasty por etapas: informe, dry-run, preview, execute, QA.

Documentos relacionados

  • README.md — descripción técnica del módulo para desarrolladores.
  • docs/WDROZENIE.md — documentación detallada de implantación y arquitectura.
  • docs/OPIS_MARKETINGOWY.md — descripción de marketing del módulo.

Preguntas y respuestas

Pregunta
Co robi Kowal ShippingRules?
Respuesta
Kowal ShippingRules pozwala zarządzać metodami wysyłki, restrykcjami dostawy i dodatkowymi opłatami w Magento 2. Reguły mogą zależeć od koszyka, produktów, adresu dostawy i wybranej metody wysyłki.
Pregunta
Czy moduł pozwala tworzyć własne metody wysyłki?
Respuesta
Tak. Moduł umożliwia tworzenie metod wysyłki w panelu Magento i przypisywanie do nich stawek oraz warunków dostępności.
Pregunta
Czy można ukrywać metody dostawy?
Respuesta
Tak. Moduł może ukryć metodę dostawy, jeśli zamówienie nie spełnia określonych warunków. Może też pokazać komunikat, że metoda nie jest dostępna.
Pregunta
Czy można doliczać extra fee?
Respuesta
Tak. Extra fee może być naliczane dla całego koszyka, każdej sztuki produktu albo tylko dla produktów spełniających warunki.
Pregunta
Czy reguły restrykcji mogą działać na atrybutach produktów?
Respuesta
Tak. Reguły mogą uwzględniać atrybuty produktów, SKU, kategorię, typ produktu, wagę, cenę i inne dane dostępne w koszyku.
Pregunta
Czy moduł obsługuje produkty gabarytowe?
Respuesta
Tak. To jeden z głównych scenariuszy użycia. Moduł może ukryć niedostępne metody dostawy i doliczyć opłatę za transport gabarytowy.
Pregunta
Czy moduł nadaje się do sklepów B2B?
Respuesta
Tak. Sklepy B2B często potrzebują reguł zależnych od wartości koszyka, grup klientów, regionów dostawy lub typów produktów. Moduł wspiera takie scenariusze.
Pregunta
Czy moduł zastępuje kilka osobnych rozszerzeń?
Respuesta
W wielu przypadkach tak. Kowal ShippingRules łączy funkcje metod wysyłki, restrykcji i dodatkowych opłat.
Pregunta
Czy obsługa sklepu może pracować z modułem bez programisty?
Respuesta
Tak, bieżące reguły można konfigurować w panelu Magento. Programista jest potrzebny głównie przy wdrożeniu, testach technicznych i ewentualnych integracjach z niestandardowym checkoutem.
Write Your Own Review
You're reviewing:Kowal Shipping Rules - extensión de Magento 2 para métodos de envío, restricciones de entrega y cargos adicionales.
Your Rating