Skip to main content
InicioBlogGuías8 mejores prácticas para la integración de la API de seguimiento de UPS (y errores que debes evitar)

8 mejores prácticas para la integración de la API de seguimiento de UPS (y errores que debes evitar)

17TRACK

Una integración fiable con la API de seguimiento de UPS no consiste tanto en mostrar un número de seguimiento como en construir un flujo de trabajo fiable para el estado del envío. Las implementaciones más sólidas validan las entradas, autentican de forma segura, normalizan las respuestas de los transportistas, gestionan las actualizaciones asíncronas y explican claramente a los clientes los cambios de estado. Estas prácticas también se aplican cuando una empresa combina datos de UPS con los de otros transportistas mediante un servicio de seguimiento multitransportista como 17TRACK Tracking API.

8 Ups Tracking Api Integration Best Practices and Mistakes to

Esta guía está dirigida a desarrolladores, equipos de operaciones de comercio electrónico y responsables de producto encargados de la visibilidad de los pedidos. Se centra en decisiones prácticas que afectan a la calidad de los datos, la experiencia del cliente, los costes operativos y la recuperación ante incidentes.

Qué debe hacer una integración con la API de seguimiento de UPS

Una integración de producción normalmente tiene cuatro responsabilidades: aceptar un identificador de envío, solicitar o recibir información de seguimiento, traducir la respuesta a un modelo interno de envío y presentar el último evento relevante a un empleado o destinatario. El portal para desarrolladores de UPS es el lugar autorizado para confirmar las API disponibles actualmente, los requisitos de autenticación, los formatos de solicitud, los campos de respuesta y las condiciones de la cuenta.

No diseñes el sistema basándote en una sola respuesta de ejemplo. Un envío puede no tener eventos todavía, tener varios eventos el mismo día, presentar una excepción, tener una estimación de entrega que cambie o recibir un evento de entrega final después de una notificación anterior. Tu modelo de datos y tu interfaz de usuario deben admitir todos estos estados.

1. Confirma el producto de API y los requisitos de acceso antes de programar

UPS ofrece varios recursos para desarrolladores, y el proceso exacto de incorporación depende de la API y de la configuración de la cuenta. Antes de la implementación, confirma el producto de seguimiento seleccionado en la documentación oficial para desarrolladores de UPS, crea las credenciales de aplicación necesarias e identifica los pasos de aprobación de producción o de la cuenta que se aplican a tu caso de uso.

Prepara un breve documento de integración que registre el nombre de la API, el entorno, el método de autenticación, los permisos necesarios, los límites de solicitudes si están documentados, los identificadores compatibles y los campos que realmente necesita tu aplicación. Esto evita un error común: desarrollar utilizando un ejemplo o un patrón de integración antiguo y descubrir tarde que el acceso a producción o un campo obligatorio siguen un proceso diferente.

Error que debes evitar: considerar que una solicitud correcta en el entorno de pruebas demuestra que la producción está lista. Separa las credenciales de prueba, las credenciales de producción, la configuración de los endpoints y la aprobación operativa tanto en la documentación como en la configuración de despliegue.

2. Protege las credenciales y aísla los entornos

Mantén las credenciales de UPS en una aplicación del lado del servidor o en un servicio de integración protegido. No coloques secretos en código del navegador, aplicaciones móviles, repositorios públicos, capturas de pantalla ni URL de seguimiento del lado del cliente. Siempre que sea posible, almacena los secretos en un almacén de secretos gestionado, restringe el acceso por rol y rótalos de acuerdo con la política de seguridad de tu organización.

Utiliza configuraciones separadas para desarrollo, pruebas y producción. Un despliegue seguro debe dificultar el envío de tráfico de prueba a un flujo de trabajo activo o el uso de una credencial de producción en el portátil de un desarrollador. Registra la identidad de la aplicación y el resultado de la solicitud, pero oculta en los registros los tokens de acceso, los secretos de cliente y cualquier información confidencial del envío.

Los fallos de autenticación deben distinguirse de los fallos de datos del transportista. Una respuesta 401 o 403 normalmente requiere revisar las credenciales, los permisos o la configuración; no debe reintentarse indefinidamente como si fuera un problema de red temporal.

3. Valida y normaliza los números de seguimiento

Valida la entrada en el límite de tu sistema, pero no crees una regla demasiado restrictiva que rechace un identificador válido. Un número de seguimiento debe tratarse como una cadena de texto, no como un número entero: los ceros iniciales, los valores largos y los caracteres de formato pueden ser importantes para el usuario aunque se eliminen antes de realizar una solicitud a la API.

Una capa de validación práctica puede eliminar espacios en blanco accidentales, conservar el valor original para mostrarlo, crear un valor de búsqueda normalizado para las coincidencias y rechazar entradas obviamente vacías o con un formato incorrecto. Los formatos exactos aceptados deben proceder de la documentación de UPS y de tus requisitos empresariales, no de la suposición de que todos los envíos utilizan el mismo patrón.

Almacena el contexto del transportista junto con el identificador. Que un valor parezca un número de seguimiento no basta para determinar qué transportista o endpoint debe recibirlo. Si tu aplicación admite varios transportistas, mantén separados un campo de transportista, un campo de origen y un ID interno del envío del número de seguimiento que ve el cliente.

4. Crea un modelo de estado interno en lugar de copiar el texto del transportista

Las respuestas de los transportistas suelen contener códigos, descripciones, marcas de tiempo, ubicaciones, estimaciones y detalles a nivel de evento. Tu aplicación debe conservar la respuesta sin procesar para solucionar problemas y, al mismo tiempo, asignar el significado empresarial útil a un modelo interno estable.

Un modelo sencillo podría incluir label_created, in_transit, out_for_delivery, delivered, exception y unknown. La lista exacta es una decisión del producto, no una garantía de UPS. Conserva el código y la descripción originales del transportista junto al estado normalizado para que el personal de soporte pueda investigar los casos ambiguos.

No infieras la entrega a partir de un mensaje impreciso o del paso del tiempo. Utiliza el evento documentado por el transportista o la indicación de entrega al marcar un paquete como entregado. Del mismo modo, una excepción no debe tratarse automáticamente como un paquete perdido. Puede requerir una investigación, una acción del cliente o simplemente otro escaneo.

5. Trata el seguimiento como un problema de datos impulsado por eventos

Una sola solicitud inmediatamente después de crear la etiqueta puede devolver información limitada. Los datos de seguimiento pueden cambiar a medida que el transportista registra nuevos escaneos, por lo que una integración útil necesita una estrategia de actualización. Dependiendo de las capacidades documentadas de la API elegida y de tu cuenta, esto puede implicar consultas programadas, notificaciones de eventos o una combinación de ambas.

Haz que las actualizaciones sean idempotentes. Si el mismo evento se recibe dos veces, el sistema debe actualizar un único registro de evento en lugar de crear notificaciones duplicadas. Una clave de evento útil puede combinar el transportista, el identificador del envío, el código del evento, la marca de tiempo del evento y otro campo estable cuando esté disponible. Si no existe una clave única fiable, conserva la respuesta sin procesar y utiliza una regla de deduplicación probada cuidadosamente.

Utiliza un comportamiento de actualización diferente para cada estado del envío. Un envío que nunca ha recibido su primer escaneo puede necesitar una frecuencia distinta de la de un paquete que ya está en reparto. Después de la entrega o de una excepción terminal, reduce o detén las consultas rutinarias, salvo que tu proceso de soporte requiera comprobaciones continuas.

6. Diseña para reintentos, límites de frecuencia y fallos parciales

Las llamadas a API externas fallan por motivos que no tienen relación con el envío: tiempos de espera agotados, errores de DNS, interrupciones temporales del servicio, credenciales no válidas y limitación de solicitudes. Tu integración debe clasificar los fallos antes de decidir qué hacer a continuación.

  • Reintenta los fallos temporales de red y del servidor con retroceso exponencial y un número máximo de intentos.
  • No reintentes repetidamente las solicitudes no válidas, los fallos de autenticación ni los identificadores no compatibles.
  • Utiliza una cola o un trabajador de tareas cuando las actualizaciones de seguimiento no necesiten bloquear el proceso de pago ni la página del cliente.
  • Registra la hora del próximo reintento, la categoría del fallo y la última actualización correcta.
  • Muestra un mensaje alternativo claro en lugar de presentar datos obsoletos como si fueran actuales.

Sigue los límites y las directrices operativas publicados para la API específica de UPS que utilices. Si tu aplicación realiza el seguimiento de un catálogo grande, evita actualizar todos los envíos con el mismo intervalo. Una cola, una caché y una programación consciente del estado pueden reducir las llamadas innecesarias sin ocultar cambios relevantes.

7. Separa la actualidad de los datos de los mensajes al cliente

La última respuesta del transportista y el mensaje mostrado al comprador están relacionados, pero no son idénticos. Un evento sin procesar puede ser útil para un equipo de operaciones, pero confuso para un cliente. Crea una capa de presentación que convierta los eventos normalizados en un lenguaje sencillo y conserve al mismo tiempo el acceso a los detalles originales del transportista.

Cada estado mostrado al cliente debe tener una marca de tiempo o un indicador de actualidad cuando sea práctico. Si la última actualización correcta es antigua, indica que la información más reciente aún no está disponible en lugar de dar a entender que el envío no se ha movido. Las zonas horarias deben gestionarse de forma coherente y la interfaz debe distinguir la ubicación del evento de la ubicación del destinatario.

Las reglas de notificación también necesitan lógica de deduplicación y de periodos de silencio. Un cliente no debería recibir correos repetidos simplemente porque el mismo escaneo fue devuelto por dos actualizaciones. Envía actualizaciones relevantes para eventos como una excepción, el paso a reparto o una entrega confirmada, de acuerdo con las preferencias de comunicación y los requisitos legales aplicables a tu empresa.

8. Prueba los casos límite operativos, no solo el recorrido ideal

Antes del lanzamiento, prueba algo más que una respuesta correcta de un envío en tránsito. Crea datos de prueba o casos controlados para un número de seguimiento desconocido, un envío sin eventos, eventos repetidos, marcas de tiempo desordenadas, una excepción, un cambio en la estimación de entrega, un envío entregado, un tiempo de espera agotado de la API, una respuesta de límite de frecuencia y credenciales caducadas.

Prueba el recorrido completo desde la respuesta de la API hasta la base de datos, la página del cliente, el panel de soporte y el servicio de notificaciones. Confirma que una respuesta con formato incorrecto no pueda sobrescribir un estado correcto, que un evento retrasado no haga retroceder un envío sin una regla explícita y que una interrupción del transportista genere una alerta operativa visible.

Después del lanzamiento, supervisa la tasa de éxito de las solicitudes, la latencia, los errores de autenticación, los fallos de análisis, los envíos obsoletos, las notificaciones duplicadas y el porcentaje de registros con un estado normalizado desconocido. Estas métricas ayudan a distinguir un incidente del lado del transportista de una regresión en tu propia integración.

Errores comunes de la API de seguimiento de UPS de un vistazo

ErrorConsecuencia operativaPráctica recomendada
Codificar las credenciales directamenteFiltración de credenciales y rotación complicadaUtilizar una configuración protegida del lado del servidor y gestión de secretos
Tratar el seguimiento como una sola solicitudVisibilidad obsoleta o incompleta del envíoUtilizar actualizaciones basadas en el estado y persistencia de eventos
Analizar solo el texto mostradoReglas frágiles cuando cambia la redacciónAsignar los códigos documentados y conservar las respuestas sin procesar
Reintentar todos los erroresSolicitudes desperdiciadas y recuperación más lentaClasificar los errores y aplicar un retroceso limitado
Probar solo casos correctosLos fallos de producción se convierten en incidentes visibles para el clienteProbar estados vacíos, retrasados, duplicados, no válidos y de excepción

Cuándo una API de seguimiento multitransportista puede ser una mejor opción

Una integración directa con UPS es adecuada cuando UPS es el transportista principal y tu equipo quiere controlar directamente el flujo de trabajo. Una capa multitransportista puede ser más práctica cuando la empresa distribuye los pedidos entre varios transportistas, opera en distintos países o quiere una única interfaz de seguimiento normalizada para un sistema de gestión de pedidos o de experiencia del cliente.

Los materiales oficiales de 17TRACK describen su Tracking API como una integración para desarrolladores destinada al seguimiento de envíos entre transportistas. Si la evalúas, compara la compatibilidad documentada con los transportistas, el esquema de respuesta, la autenticación, las opciones de webhook o consulta, las condiciones de uso y el proceso de soporte con tus requisitos específicos. No des por hecho que un servicio multitransportista elimina la necesidad de validación, reintentos, supervisión o un modelo de estado interno claro.

Lista de comprobación práctica para el lanzamiento

  1. Confirma el producto actual de la API de UPS, el proceso de acceso, los entornos y el método de autenticación en la documentación oficial.
  2. Define el modelo interno de envíos y eventos antes de escribir el analizador de respuestas.
  3. Protege las credenciales y mantén separada la configuración de producción de la de pruebas.
  4. Valida los identificadores y conserva el valor original introducido por el cliente.
  5. Implementa reintentos limitados, almacenamiento en caché, deduplicación y actualizaciones basadas en el estado.
  6. Escribe los mensajes para clientes por separado de los datos de eventos sin procesar del transportista.
  7. Prueba excepciones, resultados vacíos, escaneos retrasados, eventos duplicados y fallos del servicio.
  8. Supervisa la actualidad y la calidad del análisis después del despliegue y revisa la integración cuando cambie la documentación del transportista.

Preguntas frecuentes

¿Puedo llamar a la API de seguimiento de UPS directamente desde un navegador?

Una llamada desde el navegador puede exponer las credenciales y crear problemas de origen cruzado o de control de acceso. Una integración del lado del servidor o un servicio backend protegido suele ser más seguro. Confirma la arquitectura permitida y el flujo de autenticación en la documentación actual para desarrolladores de UPS antes de la implementación.

¿Por qué a veces un número de seguimiento no devuelve ningún evento útil?

Es posible que el envío aún no tenga un escaneo registrado, que el identificador sea incorrecto, que la solicitud utilice un contexto de transportista equivocado o que la respuesta indique un problema temporal del servicio. Almacena el resultado y su marca de tiempo, distingue un resultado vacío de un error y reintenta según una programación controlada.

¿Cada actualización del seguimiento debe activar un correo electrónico?

No. Los escaneos repetidos pueden provocar fatiga por las notificaciones. Utiliza la deduplicación y define qué eventos normalizados son relevantes para el destinatario, como una excepción importante, el paso a reparto o una entrega confirmada.

¿Cómo debe gestionar una aplicación un estado de UPS desconocido?

Conserva el código y la descripción originales, asígnalos a un estado explícito de desconocido o de revisión y evita suponer que significan entrega o pérdida. Añade supervisión para que los estados nuevos o no asignados puedan revisarse e incorporarse de forma segura.

¿Es mejor una integración directa con UPS que una API multitransportista?

Ninguna es universalmente mejor. Una integración directa puede adaptarse a un flujo centrado en UPS que requiera un control detallado. Una API multitransportista puede reducir el número de integraciones específicas cuando la visibilidad de los envíos abarca varios proveedores. Compara la cobertura documentada, los campos de datos, los controles operativos, el coste y los requisitos de soporte para la combinación real de tus envíos.

Fuentes

  • UPS Developer Portal — recursos oficiales para desarrolladores y documentación de la API.
  • UPS Tracking — servicio oficial de seguimiento de UPS.
  • 17TRACK API — información oficial del producto para la integración de la API de seguimiento multitransportista.
  • 17TRACK API Documentation — documentación oficial de la API y referencia de integración.
Loading