HMAC-SHA256El módulo de envíos de Modal COD Form (gestionado por PRCOD_Shipping_Handler en PRO y MODALCODF_Shipping_Handler en Free) permite operar bajo dos estrategias logísticas según el modelo financiero de tu tienda contraentrega:
- Modo 1 — Envío Gratis Global Forzado (Ignorar Envíos de WooCommerce): La estrategia más utilizada en Dropshipping COD para eliminar la fricción psicológica del costo de envío (incorporando el flete dentro del precio de venta del producto).
- Modo 2 — Tarifas Dinámicas por Zona / Departamento de WooCommerce: Calcula en tiempo real por AJAX el costo del flete cuando el comprador selecciona su departamento o provincia en el formulario modal.
Modo 1: Cómo Activar Envío Gratis Instantáneo en Todo el Formulario COD
Si deseas que todos los pedidos realizados desde el modal tengan envío gratuito sin importar qué zonas tengas configuradas en WooCommerce:
- Ve a WooCommerce → Ajustes → Modal COD Form → General.
- Marca la casilla Ignorar métodos de envío de WooCommerce (
cod_form_ignore_wc_shipping = 'yes') y guarda los cambios. - Efecto técnico inmediato:
- Se oculta el contenedor de botones de radio
#shipping-methodspara ahorrar espacio en móvil. - Al cambiar el departamento en
#statesolo se cargan las ciudades (ahorrando una petición AJAX al servidor). - En la tabla de resumen del modal la fila de Envío muestra automáticamente «Gratis» y la orden se crea con costo de envío
0.
- Se oculta el contenedor de botones de radio
Modo 2: Cómo Configurar Tarifas Diferenciadas por Departamento / Provincia
Si cobras tarifas distintas según la región (por ejemplo, $12.000 en Bogotá/Cundinamarca y $18.000 en trayectos nacionales):
- En WooCommerce → Ajustes → Modal COD Form → General, asegúrate de que Ignorar métodos de envío de WooCommerce esté desmarcado (
no). - Opcionalmente, deja marcada la opción Cargar tarifa de envío inicial (
cod_form_load_initial_shipping = 'yes') para que el resumen muestre la primera tarifa disponible antes de que el usuario despliegue el selector de departamento. - Ve a WooCommerce → Ajustes → Envío → Zonas de envío y crea tus zonas agrupando los departamentos/estados correspondientes con sus métodos de Precio fijo (Flat rate) o Envío gratuito.
Seguridad Criptográfica Anti-Manipulación (HMAC-SHA256)
Dado que las opciones de envío se muestran en el navegador del cliente mediante botones de radio HTML (data-cost="15000"), un usuario malintencionado podría intentar abrir el inspector del navegador y cambiar el atributo data-cost a 0 antes de enviar el pedido.
Modal COD Form (tanto en Free como en PRO) bloquea por completo este ataque:
- Cada tarifa de envío generada por el servidor incluye un atributo
data-shipping-codefirmado criptográficamente con HMAC-SHA256 usando la sal única de tu instalación de WordPress (wp_salt('nonce')) combinada con la clave interna del plugin (prcod_generate_shipping_code()). - Al recibir el formulario,
prcod_validate_shipping_code()verifica la firma criptográfica con comparación en tiempo constante (hash_equals). Si alguien alteró un solo dígito del costo en el navegador, la orden es rechazada con un error de integridad400 Invalid shipping data.
Recursos Relacionados
- 📖 Lee nuestro caso práctico en el blog: Cuándo y Cómo Ignorar los Métodos de Envío de WooCommerce.
- 📦 Siguiente paso: Integración Oficial con Dropify y Dropi en Modal COD Form PRO.