馃摝 Manual de C谩lculo de Tarifas ESA Log铆stica
驴Por qu茅 no aparece mi tarifa en el carrito?
Este manual explica las razones m谩s comunes por las que TiendaNube puede no mostrar una opci贸n de env铆o de ESA Log铆stica en el checkout. Sigue los pasos de troubleshooting para identificar y resolver el problema.
1. Validaci贸n del C贸digo Postal Destino
Problema: El cliente ingresa un c贸digo postal que no est谩 en nuestra cobertura
Soluci贸n: Verificar que el c贸digo postal est茅 registrado en la tabla de localidades
CP INGRESADO EN CARRITO: 2000 (Rosario, Santa Fe)
Verificar existencia:
SELECT COUNT(*) FROM Localidades WHERE CodigoPostal = '2000'
Si retorna 0 = CP NO CUBIERTO
Si retorna 1+ = CP EXISTE
Acci贸n requerida:
- Contactar a ESA para activar la cobertura en nuevas zonas
- Agregar c贸digos postales faltantes a la tabla Localidades
2. Cliente sin LocalidadOrigen
Problema: El cliente est谩 configurado en el sistema pero sin punto de origen
Soluci贸n: Configurar LocalidadOrigen en el registro del cliente
Mi Usuario de TiendaNube: 1386643
Mi ID de Cliente ESA: 130
Verificar:
SELECT LocalidadOrigen FROM Clientes WHERE Id = 130
Si es NULL o 0 = FALTA CONFIGURAR
Configurar:
UPDATE Clientes
SET LocalidadOrigen = 160008 -- ESCOBAR
WHERE Id = 130;
Acci贸n requerida:
- Definir tu localidad de origen (donde env铆as desde)
- Coordinar con ESA la LocalidadId correcta
3. TarifaMaestro No Existe
Problema: Tu cliente no tiene tarifas configuradas para esa zona
Soluci贸n: Crear TarifaMaestro para la combinaci贸n cliente + zona + origen
CARRITO:
- Destino: 2000 (Rosario = Zona 2)
- Origen: 160008 (Escobar)
- Tu Cliente ID: 130
Verificar tarifas:
SELECT * FROM TarifasMaestro
WHERE ClienteId = 130
AND Zona = 'Z2'
AND LocalidadOrigen = 160008
AND Activo = 1;
Si retorna 0 resultados = NO HAY TARIFA
Acci贸n requerida:
- Solicitar a ESA crear TarifaMaestro para tu cliente
- Especificar zonas que necesitas cubrir
4. TarifasReglas Incompleta
Problema: Tu tarifa existe pero no cubre el rango de peso del carrito
Soluci贸n: Verificar que haya reglas para todos los rangos de peso
CARRITO TIENE: 10 kg
Verificar reglas:
SELECT * FROM TarifasReglas
WHERE TarifaMaestroId = 6 -- tu tarifa maestro
AND PesoMinKg <= 10
AND (PesoMaxKg IS NULL OR PesoMaxKg >= 10)
AND Activo = 1;
Si retorna 0 resultados = PESO NO CUBIERTO
Acci贸n requerida:
- Definir rangos de peso (0-10kg, 10-30kg, 30-100kg, etc.)
- Establecer precio para cada rango
5. Volumen Excede L铆mites
Problema: El peso volum茅trico es mayor que el l铆mite permitido
Soluci贸n: Dividir el pedido en m煤ltiples bultos o usar carrier diferente
PRODUCTO: Alto=100cm, Ancho=50cm, Largo=50cm
C脕LCULO CON EL DIVISOR PREDETERMINADO:
Peso volum茅trico = (100 脳 50 脳 50) / 2857 = 87,50 kg
Peso facturable = el mayor entre peso real y peso volum茅trico
La clasificaci贸n BIGGER/PALLET y sus l铆mites dependen del tarifario activo.
Si ning煤n tarifario admite el peso, volumen, bultos o dimensiones, no se
devuelve una cotizaci贸n.
Factor de cubicaci贸n:
El divisor predeterminado es 2857 cm鲁/kg. Puede existir un divisor espec铆fico en el maestro de tarifa.
Cada unidad se considera un bulto: un producto con cantidad 10 suma diez pesos, vol煤menes y bultos al c谩lculo.
Tambi茅n se validan los m谩ximos de peso, alto, ancho, largo, bultos y volumen de la regla seleccionada.
6. Flete Gratis (Carrito 100% Gratis)
Caso especial: Todos los productos tienen free_shipping
Resultado: el callback env铆a el costo completo en ambos campos; Tiendanube aplica despu茅s la configuraci贸n de env铆o gratis de la opci贸n.
CARRITO:
- Producto A: $100, free_shipping: true
- Producto B: $50, free_shipping: true
SUPONGAMOS QUE LA COTIZACI脫N TOTAL ES $520:
- price: $520
- price_merchant: $520
El checkout puede mostrar env铆o gratis luego de aplicar la configuraci贸n de la
opci贸n, pero ESA conserva $520 como costo real a cargo del comerciante.
7. Carrito Mixto (Algunos Gratis, Otros No)
Caso especial: Mix de productos con y sin free_shipping
Resultado: se descuenta del precio del cliente el flete de los productos marcados como free_shipping. No se reparte por porcentaje del valor de la mercader铆a.
CARRITO:
- Producto A: free_shipping: true
- Producto B: free_shipping: false
- Cotizaci贸n del carrito completo: $27
- Cotizaci贸n del subconjunto gratuito: $20
(Ejemplo conceptual sin seguro ni IVA; si est谩n configurados, se incluyen en
los importes y se aplican de forma consistente.)
RESULTADO:
- price: $7 (27 - 20)
- price_merchant: $27 (costo real de todo el env铆o)
El precio del comprador es el importe sobre el que Tiendanube aplica la
configuraci贸n de descuentos. El precio del comerciante conserva el importe
completo que ESA utiliza para la operaci贸n y el cobro.
8. Datos y campos de la cotizaci贸n
La aplicaci贸n cotiza cuando recibe el callback de Rates. Usa origen y destino, pa铆s, c贸digo postal, localidad, provincia, moneda, valor declarado y los datos de cada producto.
- Los productos deben informar cantidad, peso en gramos y alto, ancho y profundidad en cent铆metros.
- La direcci贸n se interpreta por campos separados; no se concatena una direcci贸n de retiro para reemplazar localidad, provincia o c贸digo postal.
- El
code devuelto es exactamente el c贸digo activo recibido en carrier.options. Si no coincide, Tiendanube no muestra la tarifa.
- Las respuestas incluyen
price, price_merchant, currency, type=ship y las fechas estimadas.
9. Fechas, cobertura y motivos de ausencia
Las fechas m铆nima y m谩xima usan el plazo configurado para la localidad en d铆as h谩biles de Argentina. Los s谩bados, domingos y feriados nacionales no consumen d铆as del plazo: se atraviesan y quedan sumados como d铆as calendario adicionales. Por ejemplo, 3 d铆as h谩biles desde un viernes llegan como m铆nimo el mi茅rcoles siguiente; si el lunes es feriado, llegan el jueves.
Si la opci贸n del carrier tiene additional_days, Tiendanube suma ese valor despu茅s de recibir la cotizaci贸n. ESA no lo vuelve a sumar para evitar duplicar los d铆as.
Es normal que el checkout reciba rates: [] cuando:
- el c贸digo postal no tiene cobertura o no se puede resolver la localidad;
- falta peso, cantidad o alguna dimensi贸n v谩lida;
- se exceden los l铆mites del tarifario o no hay una regla vigente;
- la tienda, el carrier o la opci贸n no est谩n activos;
- el pa铆s no es Argentina o la moneda no tiene conversi贸n configurada.
La ausencia de una tarifa significa que el env铆o no puede ser operado con la cobertura y configuraci贸n actuales. Para soporte, informar tienda, carrito, origen, destino, moneda, peso y medidas.
10. Pa铆ses, monedas y env铆os internacionales
La versi贸n actual publica 煤nicamente env铆os nacionales dentro de Argentina. Lee el campo country y no cotiza destinos internacionales con un tarifario local.
La moneda base es ARS. Para habilitar una moneda adicional, el administrador debe configurar la equivalencia en ARS por unidad, por ejemplo TiendanubeShipping__ExchangeRates__USD. Si no existe esa configuraci贸n, no se devuelve un importe ARS etiquetado como USD, BRL u otra moneda.
Por lo tanto, las tarifas internacionales y las pruebas con c贸digos postales de otros pa铆ses quedan pendientes de una tabla de cobertura, reglas y tipos de cambio espec铆ficos.
11. Puntos de retiro y m煤ltiples vol煤menes
El carrier publicado actualmente es de tipo ship y entrega a domicilio. No se publican puntos pickup en esta versi贸n.
Cuando una compra tiene varios productos o cantidades, el c谩lculo suma los bultos y vol煤menes de cada unidad. La aplicaci贸n no adivina un reembalaje: el comerciante debe cargar en el cat谩logo las dimensiones del bulto que realmente despacha y definir su criterio de empaque.
El precio incluye el seguro configurado y el IVA vigente. No se impone al comerciante un cargo fiscal separado en el checkout.
Tabla de Referencia R谩pida
| Elemento |
D贸nde Verificar |
Qu茅 Significa |
| CodigoPostal |
Tabla Localidades |
Zona de cobertura |
| LocalidadOrigen |
Tabla Clientes |
D贸nde env铆as desde |
| TarifaMaestro |
Tabla TarifasMaestro |
Tarifa madre por cliente + zona |
| TarifasReglas |
Tabla TarifasReglas |
Precio seg煤n peso/dimensiones |
| Factor Cubicaci贸n |
Config Sistema |
2857 por defecto (volum茅trico 梅 divisor = peso) |
鈿狅笍 IMPORTANTE:
- Todos estos valores deben estar ACTIVOS (Activo = 1)
- Las fechas de vigencia (VigenciaDesde / VigenciaHasta) deben cubrir la fecha actual
- Si cambias tarifas, los cambios aplican inmediatamente en nuevas cotizaciones
Contacto y Soporte
Para problemas de configuraci贸n:
- Email: soporte@esalogistica.com.ar
- Tel茅fono: +54 (espec铆fico de tu regi贸n)
- WhatsApp: (disponible en horario de atenci贸n)