Paqueterías
Zipnova
Integración con Zipnova — paquetería con saldo prepaid, 29 estados normalizados a 7 categorías, webhooks. Slug: zipnova.
Datos disponibles
- Guías con detalle: tracking, eventos, contenido, costo, fechas.
- Saldo (billing): balance, available, credit_limit. Visible en métricas.
- 29 estados normalizados a 7 categorías (incluye DEVOLUCION, SINIESTRADO).
Cómo conectar
Desde Onboarding → Zipnova → ingresa Basic Auth credentials. Validamos contra GET /accounts, encriptamos, y registramos automáticamente los webhooks status y shipment. Sync inicial directo (no via per-seller fan-out).
Webhooks
POST /api/webhooks/zipnova responde 200 inmediato y procesa async vía after(). Status/shipment fetcha el detail y upserta. El handler también entiende account_balance si se registra manualmente.
En tránsito desde el WMS
En Pre Envíos, un supervisor puede mover a in_transit (En camino) los envíos de Mercado Libre configurados como Flota Propia en ZIPNOVA, sin importar si la paquetería final en SELLERP es Castores, Paquetexpress u otra. SELLERP exige una relación única, consulta el estado vivo y reconcilia después del éxito. Transferir a Envíos permanece separado.
Sync
3 Inngest functions: initial self-chaining + reconciliation daily + per-seller recon (skip unchanged). NO crons periódicos — los webhooks manejan incrementales, la reconciliación diaria es red de seguridad.
Detalles técnicos
- Rate limiter sliding-window 800 req/min con backoff en 429/5xx.
- Zipnova fuerza
per_page=20(ignora valores mayores). Usamosmeta.last_pagede la API, no nuestro cálculo. - Sin payment normalization — Zipnova es logística, no ventas.
- Cross-references con ML:
order.channel_relations→ pack_id + tags.