Rastreo multipaquetería: cómo unificar guías externas

Cuando unas guías nacen en tu ecommerce, otras en un marketplace y otras en un portal de paquetería, el cliente no debería recibir una experiencia distinta para cada paquete. Un tracker externo conecta el número existente con estados comunes, historial y webhooks sin volver a comprar la guía ni cambiar dónde se generó.

01 / Guía

Cuándo necesitas registrar un tracker

Registra un tracker únicamente cuando la guía fue creada fuera de SendIt y quieres incorporarla a tu seguimiento. Las guías compradas en SendIt ya reciben rastreo automáticamente y no consumen la cuota de trackers externos.

Un tracker observa el recorrido de una guía existente. No compra otra guía, no modifica el destino y no reemplaza el envío original.

Diferencias según el origen de la guía
Origen de la guíaCómo empieza el rastreoEvento de actualización
Comprada en SendIt El rastreo se crea automáticamente shipment.tracking.updated
Creada en otro sistema Registras POST /v1/trackers tracker.updated

02 / Guía

Prepara tres datos y evita contexto innecesario

El número de rastreo es obligatorio. carrier funciona como una pista opcional cuando el formato identifica claramente a la paquetería; si el número es ambiguo, debes enviar esa pista de forma explícita.

metadata te permite guardar una referencia como el identificador del pedido. SendIt la devuelve sin interpretarla, por lo que conviene mantenerla pequeña y no incluir datos personales, llaves o información sensible.

  • trackingNumber: número exacto de la guía externa.

  • carrier: pista opcional; necesaria cuando el número es ambiguo.

  • metadata.orderId: referencia de tu sistema para conciliar el pedido.

  • Una guía de una paquetería no disponible para seguimiento devuelve un error claro.

03 / Guía

Registra la guía externa con la API

POST /v1/trackers crea el seguimiento sin crear un envío nuevo. El ejemplo usa una llave de prueba para validar el contrato sin consumir cuota ni generar un excedente.

El tracker comienza en UNKNOWN con un historial vacío. Cuando llega la primera actualización, el estado y events[] empiezan a reflejar el recorrido disponible.

Registrar un tracker externo HTTP + JSON
POST /v1/trackers
X-API-Key: sk_test_...
Content-Type: application/json

{
  "trackingNumber": "1234567890123456",
  "carrier": "DHL",
  "metadata": {
    "orderId": "ORD-2026-001"
  }
}

04 / Guía

Un reintento no debe crear un segundo seguimiento

Si registras el mismo número y paquetería dentro de tu organización y ya existe un tracker activo de los últimos tres meses, SendIt devuelve el existente con meta.deduplicated: true. Ese registro repetido no vuelve a consumir cuota ni genera otro cargo.

Por esa deduplicación, POST /v1/trackers puede reintentarse sin Idempotency-Key. El encabezado sigue siendo opcional y también se respeta si tu integración decide incluirlo.

05 / Guía

Traduce los estados una sola vez

Las paqueterías pueden describir el mismo momento con palabras distintas. El tracker lo presenta mediante un recorrido común para que tu ecommerce aplique una sola regla por etapa.

Estados normalizados de un tracker externo
EstadoQué significaAcción útil
UNKNOWN Todavía no existe información suficiente. Muestra que el seguimiento está pendiente sin inventar una ubicación.
PRE_TRANSIT La guía existe, pero aún no hay movimiento confirmado. Evita comunicar que la paquetería ya recibió el paquete.
IN_TRANSIT El paquete avanza dentro de la red. Actualiza el pedido y conserva el último evento.
OUT_FOR_DELIVERY El paquete salió a reparto. Prepara la comunicación de entrega final.
DELIVERED La entrega terminó correctamente. Cierra el seguimiento una sola vez.
RETURNED El paquete terminó su recorrido de regreso. Relaciona el resultado con el proceso de devolución.
FAILED El recorrido terminó sin una entrega correcta. Envía el caso a revisión operativa.

06 / Guía

No toda incidencia cambia el estado principal

Un intento fallido, una retención o un daño puede aparecer dentro de events[] con isException: true sin cambiar inmediatamente el estado general. Revisa ambos niveles: el estado responde dónde está el recorrido; el evento explica qué requiere atención.

  • No marques FAILED por cualquier evento con isException.

  • Muestra el último evento con lenguaje comprensible.

  • Conserva occurredAt y la ubicación disponible sin completar datos ausentes.

  • Define qué excepciones abren una tarea para tu equipo.

07 / Guía

Recibe cambios por webhook y consulta el historial

Suscribe tu endpoint a tracker.created, tracker.updated y tracker.expired. No existe un evento separado para entrega o falla: lee data.object.status dentro de tracker.updated y evita procesar dos veces el mismo id de evento.

GET /v1/trackers/:id devuelve el estado actual y el historial completo. Úsalo para conciliar cuando tu receptor estuvo fuera de línea o una decisión necesita confirmar el dato más reciente.

Flujo de actualización de una guía externa
  1. 01

    Registras

    Creas el tracker con número, pista de paquetería y referencia del pedido.

  2. 02

    Se actualiza

    SendIt incorpora el nuevo evento y normaliza el estado.

  3. 03

    Recibes el webhook

    Tu endpoint verifica firma, modo e identificador.

  4. 04

    Actualizas el pedido

    Tu sistema aplica una transición sin duplicar efectos.

  5. 05

    Reconcilias

    Consultas el tracker cuando necesitas confirmar el historial actual.

08 / Guía

Cuándo deja de consultarse una guía externa

Un tracker se finaliza cuando llega a DELIVERED, RETURNED o FAILED. También puede expirar después de 45 días sin salir de PRE_TRANSIT o 60 días sin recibir un evento nuevo. El registro permanece disponible para consulta, pero deja de buscar actualizaciones.

DELETE /v1/trackers/:id detiene permanentemente un tracker externo. Esa acción es irreversible y no sirve para anular una guía comprada en SendIt.

09 / Guía

Qué trackers cuentan dentro de tu plan

Solo las guías externas que registras consumen la cuota mensual. Las guías compradas en SendIt incluyen su seguimiento automáticamente, mientras que los trackers creados con una llave sk_test_ no consumen cuota ni generan excedente.

Cuotas publicadas de trackers externos
PlanTrackers incluidos al mesTracker adicional
Free 100 $0.80 MXN
Growth 2,000 $0.50 MXN
Scale 10,000 $0.30 MXN
Enterprise Cuota acordada Según la operación

10 / Guía

Checklist para incorporar una nueva fuente de guías

Prueba una sola fuente antes de importar todo el historial. Cuando número, paquetería, pedido y eventos se relacionan correctamente, repite el mismo contrato para el siguiente canal.

11 / Guía

Una sola vista aunque la guía nazca en otro lugar

SendIt permite reunir guías propias y externas bajo un seguimiento común, con historial y webhooks para conectar el estado con tu ecommerce o sistema.

La API de trackers está disponible en beta y su contrato puede evolucionar antes de v1 estable. La plataforma está en pre-lanzamiento; puedes validar el flujo con una llave de prueba antes de registrar guías reales.

Siguiente paso

Completa la tarea.

Producto de rastreoConoce la experiencia unificada para guías propias y externas. Automatizar rastreo con webhooksVerifica, deduplica y procesa cada cambio de estado. Documentación de trackersConsulta el contrato beta, filtros, eventos y límites. Planes y cuotasCompara trackers incluidos y excedentes publicados.

Preguntas frecuentes

Respuestas rápidas.

¿Necesito registrar las guías que compro en SendIt?

No. Esas guías reciben rastreo automáticamente y no consumen la cuota de trackers externos.

¿El carrier es obligatorio al registrar un tracker?

No siempre. Es una pista opcional cuando el número identifica una opción sin ambigüedad; si el formato puede pertenecer a más de una paquetería, debes enviarlo.

¿Qué pasa si registro dos veces el mismo número?

Si ya existe un tracker activo del mismo número y paquetería en tu organización dentro de los últimos tres meses, recibes el existente sin volver a consumir cuota ni generar otro cargo.

¿Una incidencia siempre cambia el tracker a FAILED?

No. Un evento puede llevar isException: true sin cambiar el estado principal. FAILED se utiliza cuando el recorrido termina sin una entrega correcta.

¿Cómo sé que una guía externa fue entregada?

Recibes tracker.updated y lees DELIVERED en data.object.status. También puedes consultar GET /v1/trackers/:id para confirmar el estado actual.

¿Puedo probar trackers externos sin consumir la cuota?

Sí. Los trackers creados con una llave sk_test_ no consumen la cuota mensual ni generan excedente.

SendIt

Cotiza, crea guías y rastrea en un solo lugar.

SendIt está en pre-lanzamiento. Únete a la lista para conocer la apertura de la plataforma.

Próximamente

Prueba SendIt desde el primer acceso

Únete a la lista y te avisamos cuando abramos el acceso.

Solo avisos de acceso. Puedes retirar tu autorización en privacidad@sendit.mx.