API REST Urbano Express Última actualización: 06-03-2026
Bienvenido a la documentación de la API REST de Urbano Express. Esta API le permitirá integrar sus sistemas con nuestros servicios de logística para gestionar envíos, consultar tarifas, realizar seguimientos y mucho más.
Importante: Esta documentación está basada en nuestro ambiente de desarrollo. Para producción, reemplace las URL según se indica en la sección de Ambientes.
Proceso de Alta en Urbano:
Este documento detalla los pasos necesarios para integrar un nuevo Cliente a nuestra plataforma logística, utilizando estas APIs disponibles para la comunicación con Urbano Express Argentina.
1. Inicio del Proceso y Cadena de Mails:
Para comenzar el proceso de integración, las credenciales SOLO PUEDEN SER SOLICITADAS POR EL EJECUTIVO DE CUENTAS (que a partir de ahora lo llamaremos EC).
Su EC será el punto de contacto para iniciar este proceso y proporcionarle toda la documentación necesaria para la gestión comercial.
Una vez que su EC haya iniciado dicho proceso se dispondrá de una cadena de mails donde le estaremos indicando el paso a paso correspondiente.
Siempre se deberá mantener en la cadena de mails a su EC y a Integraciones (integracionsistemas@urbano.com.ar) para que el proceso fluya de forma natural sin contratiempos.
2. Ambiente de Testing y Órdenes de Prueba:
En primera instancia le enviaremos las credenciales de nuestro ambiente de testing dedicado. Este ambiente le permitirá configurar y probar la conexión entre su tienda y nuestra plataforma antes de pasar a producción. Se podrán generar órdenes de prueba, imprimir etiquetas y ver el seguimiento de sus pedidos sin impacto real en nuestros sistemas.
Éste paso es clave para evitar inconsistencias y asegurarnos que todo funcione correctamente con la integración.
Pasos clave:
Configuración inicial: Deberá configurar su integración con nuestro sistema en el ambiente de testing.
Envío de órdenes de prueba: Una vez configurado, es imprescindible que nos envíe un mínimo de 5 órdenes generadas en su Tienda bajo nuestro ambiente de testing. Estas órdenes deben ser representativas de los tipos de pedidos que gestionará habitualmente (por ejemplo, con diferentes productos, direcciones de envío, etc.).
Revisión y validación: Nuestro equipo revisará estas órdenes de prueba para verificar que la información se transmita correctamente y que no existan inconsistencias o errores en los datos recibidos.
Esto incluye la validación de:
- Datos del destinatario (nombre, dirección completa, teléfono, email).
- Detalles de los productos (peso y dimensiones son OBLIGATORIAS en cada producto).
3. Obtención de Credenciales de Producción:
Una vez que hayamos validado las 5 órdenes de prueba enviadas desde su ambiente de testing y confirmado que la integración funciona correctamente, procederemos a enviarle las credenciales de producción.
Proceso:
Confirmación de validación: Recibirá una confirmación por parte de nuestro equipo indicando que las órdenes de testing han sido validadas exitosamente.
Envío de credenciales: Inmediatamente después de la confirmación, le proporcionaremos las credenciales necesarias (End-Point, Numero de Shipper y Contraseña) para configurar la integración en su ambiente de producción.
Configuración en producción: Con estas credenciales, podrá replicar la configuración exitosa del ambiente de testing en su entorno de producción, habilitando la integración real con Urbano Express Argentina.
Consideraciones importantes:
Le recomendamos que realice pruebas adicionales en producción con un volumen bajo de órdenes al inicio para asegurar un funcionamiento óptimo antes de operar con el volumen completo.
Ante cualquier duda o inconveniente durante el proceso de integración, no dude en escribirnos por medio de la Cadena de Mails anteriormente mencionada (siempre incluyendo a su EC y al Equipo de Integraciones).
Cosas Importantes antes de Integrarse con Urbano:
Recuerde que una vez impactada una Orden no se podrá modificar, quedando como unica opcion darla de baja y volverla a cargar por medio del Portal Clientes mediante un archivo (.XLS) de forma Manual.
Descripción General
Desarrollada por Urbano Express, estas APIs proporcionan toda la información necesaria para integrar su E-Commerce con nuestros servicios logísticos.
Beneficios principales:
Automatización de procesos logísticos
Consulta en tiempo real de tarifas de envío
Seguimiento detallado de envíos (tracking)
Gestión de puntos de retiro y sucursales
Impresión de etiquetas en múltiples formatos (A4, Z10X10, Z10X6, ZPL)
Normalización de direcciones para mayor agilidad en logística
Consulta de peso y medidas del paquete
Canalización por código postal
Soporte para múltiples tipos de servicio (entrega, retiro, contra reembolso, sucursal)
Integración flexible con múltiples plataformas
Consumo de la API
Con nuestros servicios usted podrá disponer de los siguientes beneficios:
En cada request con sus métodos GET, POST, se va a requerir la autenticación correspondiente al shipper, en el mismo se especificará un password otorgada por Urbano.
Consultar con Urbano Express por las credenciales correspondientes a su shipper.
Aclaración:
Los campos de autenticación son requeridos en todos los casos salvo en el método GET de impresión de etiquetas.
El código postal es de 4 dígitos desde 1000 a 9999
Ambientes
La API está disponible en dos ambientes:
Desarrollo/Testing:
https://testing-apis.urbano.com.ar/
Utilizado para pruebas y desarrollo del cliente. Las URLs en esta documentación apuntan a este ambiente.
Nos retornará la tarifa correspondiente según su código postal, además de devolvernos el "PesoReal". nos informara si existiera un error con su numero y con su descripción.
Código postal de destino. Debe estar entre 1000 y 9999
pesoEspecifico
decimal
4,2
Peso real del paquete en kg. Debe ser numérico
pesoVolumetrico
decimal
4,2
Peso volumétrico en kg (opcional). Si se envían alto, largo y ancho, el sistema calcula el peso volumétrico automáticamente usando el factor de aforo del shipper y toma el mayor entre el calculado y el informado. El pesoReal devuelto en la respuesta es el mayor entre pesoEspecifico y pesoVolumetrico
alto
decimal
4,2
Alto del paquete en cm. Se usa para calcular el peso volumétrico
largo
decimal
4,2
Largo del paquete en cm. Se usa para calcular el peso volumétrico
ancho
decimal
4,2
Ancho del paquete en cm. Se usa para calcular el peso volumétrico
Credenciales inválidas (shipper o password vacíos/incorrectos)
ERROR
5
200
Código postal inválido (entre 1000 y 9999), o pesoEspecifico ausente o no numérico
ERROR
-1
200
Error interno al procesar el servicio
ERROR
Carga Cliente (Creacion de una Orden de envío):
Ingresamos un cliente como destinatario especificando su domicilio, adicionando como opcional un segundo domicilio, se deberá ingresar un numero de seguimiento, remito y observaciones. En Producto se ingresara la descripción, sus medidas, longitud, peso, valor, sku y la cantidad.
Valor del producto para asegurar el envío. Opcional; si se omite, se asume 0. Éste servicio deberá gestionarlo con su Ejecutivo de Cuentas.
valorContrareembolso
integer
8
Valor de pago contra entrega. Requerido solo para servicio tipo "B" (contrareembolso); en ese caso no puede ser 0.
cantidad
integer
4
Refiere a la cantidad de etiquetas que se imprimiran en el pedido
sku
string
30
Identificador SKU del producto. Requerido solo para clientes WARE.
descripcionProducto
string
40
Refiere a la descripcion del producto
autentificacion
shipper
integer
-
Número de shipper
password
string
-
Contraseña del shipper
destinatario
tipoDocumento
string
10
Refiere al tipo de identificación de la persona (DNI, LE o LC)
numeroDocumento
integer
10
Refiere al nro de documento de la persona
nombre
string
40
Refiere al nombre de la persona
email
array/string
45
Refiere al correo electrónico
telefono
string
40
Refiere al teléfono particular
celular
string
15
Refiere al celular
autorizado (array) - Ver campos de destinatario
domicilio
direccion
string
45
Dirección del destinatario
altura
string
6
Numeración del domicilio
piso
string
6
Piso del domicilio
departamento
string
6
Departamento del domicilio
codigoPostal
integer
4
Código Postal
localidad
string
-
Localidad del domicilio
provincia
string
-
Provincia del domicilio
latitud
string
10
Localización en latitud
longitud
string
10
Localización en longitud
telefono
array
-
Teléfono del domicilio (array)
domicilioAlternativo - Ver campos de domicilio (todos opcionales)
datoNumerico
string
10
Dato numérico adicional
codigoSeguimiento
string
4-16
Código único identificador del envío (mínimo 4, máximo 16 caracteres)
codigoAlternativo
integer
15
Código alternativo
servicio
string
1
Tipo de servicio
observaciones
array
6
Observaciones adicionales (hasta 6 elementos de 95 caracteres cada uno)
Notas Importantes
Tipos de servicio:
E: Entrega
R: Retiro
B: Contra reembolso
F: Retiro en sucursal
G: Retiro en sucursal contra reembolso
C: Canje (Retiro y Entrega simultánea de productos)
Si el servicio es de Contrareembolso el importe del campo "valorContrareembolso"no puede estar en 0
Si el cliente tiene seguro el campo "valor" del producto no puede estar en 0. Éste servicio deberá ser gestionado con su Ejecutivo de Cuenta.
Campos del destinatario son obligatorios salvo teléfono y mail que pueden ser nulos.
Campos receptor autorizado pueden ser nulos
Campos del apartado domicilio: altura, piso, departamento, longitud, latitud pueden ser nulos. La dirección, localidad, provincia y el código postal son obligatorios.
Campos del domicilio alternativo pueden ser nulos.
El código de seguimiento es obligatorio y tiene un máximo de 16 caracteres (mínimo 4).
Código de seguimiento alternativo puede ser nulo.
Observaciones pueden ser nulos. El límite de caracteres es de 95 caracteres, máximo 2 observaciones.
Si el Pedido es con Punto de Retiro en Sucursal (Servicios F o G) debemos especificar el código de sucursal en el campo "localidad".
Por ejemplo: G23 Obtenido desde el campo "prov_codigo" del end-point Puntos de Retiro y Sucursales
WAREHOUSING:
El código SKU no puede ser nulo
El peso del producto puede estar en 0
CROSS:
El peso del producto (bulto) no puede estar en 0
Usar un Punto de Retiro Sucursal como destino
Cuando el envío debe entregarse en una sucursal de Urbano (servicio F — Retiro en sucursal, o G — Retiro en sucursal contra reembolso), la dirección de destino es la propia sucursal. Seguir estos pasos:
Consultar el endpoint Puntos de Retiro Sucursales para obtener el listado de sucursales disponibles y sus códigos.
Del resultado, tomar el valor prov_codigo de la sucursal deseada (ej. "G23").
En el request de cargaCliente:
Enviar servicio con valor "F" o "G".
Enviar domicilio.localidad con el valor de prov_codigo obtenido (ej. "G23").
Completar domicilio.provincia, domicilio.codigoPostal y domicilio.direccion con los datos de dirección de esa sucursal obtenidos en la misma respuesta.
Ejemplos de código:
cURL
curl -X POST "https://testing-apis.urbano.com.ar/cargaCliente/" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"productos":[{"largo":10,"alto":5,"ancho":2,"peso":50,"valor":5200,"valorContrareembolso":0,"cantidad":5,"sku":"Test3","descripcionProducto":"1072-1"}],"autentificacion":{"shipper":671,"password":"MPzQG6%jfN%-#tsb=CUj"},"destinatario":{"tipoDocumento":"DNI","numeroDocumento":32222222,"nombre":"Urbano Dev Test","email":["dev-test@urbano.com.ar"],"telefono":"5492994230940","celular":"5492994230940"},"domicilio":{"direccion":"Santa Rita","altura":"9999","codigoPostal":"1657","localidad":"San Martin","provincia":"Buenos Aires"},"codigoSeguimiento":"TEST15004","servicio":"E"}'
Credenciales inválidas (shipper o password vacíos/incorrectos)
ERROR
3
200
Código de seguimiento vacío o cantidad debe ser mayor a 0
ERROR
5
200
Código postal inválido
ERROR
6
200
Sucursal inválida
ERROR
7
200
Caracteres especiales no permitidos en el código de seguimiento
ERROR
8
200
Código de seguimiento ya existente en el sistema
ERROR
9
200
No se permite peso 0
ERROR
10
200
Tipo de servicio incorrecto o no se proporcionaron productos
ERROR
11
200
Proceso de carga vigente para ese código, o valor / contrareembolso negativo
ERROR
400
200
Request vacío, SKU inválido o número de documento requerido faltante
ERROR
-1
200
Error interno al procesar el servicio
ERROR
Tracking
Consulta el seguimiento según el parámetro de "codigoSeguimiento", Nos retornara la URL del seguimiento, además de los movimientos con los parámetros check, descripción y fecha / hora.
Credenciales inválidas (shipper o password vacíos/incorrectos)
ERROR
4
200
Error interno al procesar la consulta de tracking
ERROR
5
200
Pieza postal inexistente para el código de seguimiento informado
ERROR
-1
200
Error interno al procesar el servicio
ERROR
Puntos de Retiro
Ingresando según nuestra dirección, nos retornara todos los puntos de retiro disponibles incluyendo según su ciudad y los parámetros correspondientes de "latitud", "longitud", "nombre", "dirección", "teléfono", "código", "entrecalles", "codigoPostal", "municipalidad", "localidad", "provincia", "elockers", "distancia".
Valor fijo: siempre debe enviarse como "%". Cualquier otro valor devuelve error 400
va_con_llc
integer
1
Con locker (1) o sin locker (0)
pieza
peso
decimal
4,2
Peso de la pieza en kg
alto
decimal
4,2
Altura de la pieza en cm
largo
decimal
4,2
Largo de la pieza en cm
ancho
decimal
4,2
Ancho de la pieza en cm
Raíz
elockers
integer
1
Valor fijo: siempre enviar como 1
Notas Importantes
El campo prov_codigo que devuelve cada sucursal en la respuesta es el valor que debe enviarse en el campo localidad del endpoint cargaCliente cuando el envío tiene como destino un punto de retiro (sucursal).
Credenciales inválidas (shipper o password vacíos/incorrectos)
ERROR
400
400
No se puede interpretar la solicitud dada (ubicacion.va_prov_codigo debe ser "%")
ERROR
-1
200
Error interno al procesar el servicio
ERROR
Canalizador por Código Postal
Ingresando según nuestro código postal, nos retornara la logística según su código, nos informara si la consulta a sido completada, además de informarnos sobre algún error en la base de datos con el código de error.
Código postal a consultar. Debe ser numérico. El ruteo sameday es determinado por la configuración del shipper en el sistema, no por un parámetro del request
Este endpoint devuelve un PDF (no JSON). Los errores se retornan como texto plano:
tipo ausente → "Es necesario ingresar el formato de guia a imprimir (A4, Z10X10, Z10X6)."
| shipper o codSeguimiento ausentes → "Es necesario ingresar los datos generar la etiqueta."
Normalizador de Direcciones
Ingresando según nuestra dirección, nos retornara los datos del domicilio correctos de acuerdo a nuestras bases, de esta manera obtendremos mayor agilidad en la logística de los envíos.
Este endpoint usa status.success y status.message en lugar de codError.
HTTP
status.success
status.message
200
true
ok
200
false
No se encuentran datos para el código de seguimiento solicitado
400
false
Request vacío o codigoSeguimiento requerido
401
false
Credenciales inválidas
Rescate de Órdenes
Permite solicitar el rescate de piezas en tránsito a través de dos modalidades:
Devolución — rescate masivo: el pedido es devuelto al vendedor/remitente. Se pueden enviar múltiples piezas en una misma solicitud.
Redireccionamiento — rescate individual: la pieza es derivada a una nueva dirección de entrega. Solo se permite una pieza por solicitud y es obligatorio informar los datos del nuevo destinatario y domicilio.
Códigos de seguimiento a rescatar. Devolución: acepta múltiples. Redireccionamiento: solo 1 elemento.
tipoRescate
string
"devolucion" o "redireccionamiento"
destinatario.nombre
string
Nombre del nuevo destinatario. Requerido para redireccionamiento.
domicilio.direccion
string
Calle del nuevo domicilio. Requerido para redireccionamiento.
domicilio.altura
string
Número/altura del domicilio. Requerido para redireccionamiento.
domicilio.codigoPostal
string
Código postal de 4 dígitos numéricos. Requerido para redireccionamiento.
domicilio.localidad
string
Localidad del nuevo domicilio. Requerido para redireccionamiento.
domicilio.provincia
string
Provincia del nuevo domicilio. Requerido para redireccionamiento.
domicilio.piso
string
Piso (opcional, solo redireccionamiento).
domicilio.departamento
string
Departamento (opcional, solo redireccionamiento).
domicilio.observaciones
string
Observaciones adicionales (opcional, solo redireccionamiento).
Posibles mensajes en la respuesta:
Campo
Modalidad
Mensaje
Resultado
succeeded
Ambas
La pieza ha sido rescatada correctamente
OK
succeeded
Devolución
Solicitud de rescate de Devolucion generada correctamente
OK
succeeded
Redireccionamiento
Solicitud de rescate de Redireccion generada correctamente
OK
rejected
Ambas
La pieza ya tiene un Rescate existente
RECHAZADO
rejected
Ambas
La pieza no es apta para ser rescatada
RECHAZADO
rejected
Redireccionamiento
La pieza no se pudo rescatar porque no tiene DESPACHO
RECHAZADO
failed
Ambas
El proceso de rescate ha fallado, comuníquese con su Ejecutivo de Cuentas
ERROR
Cancelación de Orden
IMPORTANTE: Este End-Point se deprecará para Julio de 2026.
Permite solicitar la cancelación de una orden a partir de su código de seguimiento. El sistema verifica si Urbano tiene el producto en su poder y si la pieza es apta para cancelar, generando en ese caso una solicitud de rescate automática. La autenticación se realiza mediante headers HTTP en lugar del body JSON.