Crear Envíos
Última actualización
Última actualización
Los endpoints de creación de envíos utilizan rate limiting Alto
Al crear un envío necesitarás informar algunos datos que surgen de la .
Luego de cotizar, debes almacenar los valores de logistic_type
, service_type
, carrier_id
de la opción de envío deseada, para luego utilizarlos al crear el envío.
Si se trata de un envío a retirar por sucursal, también debes almacenar el point_id
de la ubicación donde se vaya a hacer el retiro del envío por el destinatario.
Permite crear un envío indicando un conjunto de productos a despachar. La API empaquetará los items en paquetes de acuerdo a la lógica definida en la cuenta, y teniendo en cuenta los contenedores configurados.
POST
/v2/shipments
Este request te permitirá crear envíos indicando los articulos que son parte del despacho. El sistema los agrupará en paquetes automáticamente, según las reglas definidas en la cuenta.
account_id*
int
ID de la cuenta
origin_id*
int
ID del origen del envío
logistic_type
string
Código de la forma de despacho del envío.
Ejemplo: carrier_dropoff
Se recomienda explicitarlo basado en los resultados obtenidos en la cotización utilizar la opcion de envio deseada
service_type
string
Código de la forma de entrega del envío.
Ejemplo: standard_delivery
Se recomienda explicitarlo basado en los resultados obtenidos en la cotización utilizar la opcion de envio deseada
carrier_id
int
ID del transporte que hará la entrega.
Se recomienda explicitarlo basado en los resultados obtenidos en la cotización.
source
string (150)
Utilizado en algunas integraciones para identificar el canal de venta.
declared_value*
float
Valor declarado del envío. Monto que se asegurará. Para no utilizar seguro se debe enviar en cero.
destination.name*
string (100)
Nombre y apellido del destinatario
destination.street*
string (100)
Calle del domicilio de entrega.
Requerido solo en entregas a domicilio.
destination.street_number*
string (10)
Altura/nro de puerta del domicilio de entrega.
Requerido solo en entregas a domicilio.
destination.street_extras
string (190)
Referencias adicionales del domicilio como piso, departamento, nro de lote, etc.
Requerido solo en entregas a domicilio.
destination.point_id
int
ID de la ubicación de entrega.
Requerido solo cuando la entrega es en un punto de entrega.
destination.document*
string (50)
Número de documento (DNI, RUT, o lo que corresponda) del destinatario
destination.email*
email (150)
Dirección de correo electrónico del destinatario
destination.phone*
string (50)
Número de contacto del destinatario
destination.state*
string
Nombre del Estado del domicilio del destinatario.
AR: provincia
CL: región
MX: estado
Requerido solo en entregas a domicilio.
destination.city*
string
Nombre de la ciudad del domicilio del destinatario.
AR: localidad
CL: comuna
MX: ciudad
Requerido solo en entregas a domicilio.
destination.zipcode*
string
Codigo postal de la dirección de destino.
Requerido solo en entregas a domicilio.
Dato no requerido en Chile.
destination.country
string
Código ISO 3166-1 alfa-2 del país
Argentina: AR
Chile: CL
México: MX
destination*
object
Objeto con datos del destinatario
items*
array[Item]
Array de objetos Item.
Cada Item es un articulo a enviar.
El máximo de artículos por envío es 1000.
Ten en cuenta que más allá de la cantidad de items, un envío no puede resultar en más de 99 paquetes.
items.*.sku
string (190)
Se intentará vincular a un producto cargado en el catálogo de Zippin.
items.*.weight*
int
Peso en gramos.
items.*.classification_id
int
ID de clasificación de producto.
Si se omite se utilizará la clasificación General (1).
items.*.height*
int
Alto del artículo, en centímetros.
items.*.width*
int
Ancho del artículo, en centímetros.
items.*.length*
int
Largo del artículo, en centímetros.
items.*.description
string (190)
Descripción o nombre del artículo
external_id*
string (30)
ID del envío en tus sistemas. Es para tu propia referencia.
type_packaging
string
Indica la forma de empaquetar los productos. Si se omite se usa el que tenga definido la cuenta por default.
Valores posible:
dynamic
: empaquetado dinámico
boxes
: usar cajas configuradas en la cuenta
none
: no empaquetar (cada item debe resultar en un package separado)
Permite crear un envío indicando un conjunto de paquetes a despachar. Queda de tu lado la agrupación de productos en paquetes, si es que debes enviar más de un producto.
La utilización de múltiples paquetes sirve para cuando en un mismo envío debes despachar múltiples bultos (por ejemplo si estás enviando un colchón y un sommier).
POST
/v2/shipments
Este request te permitirá crear envíos indicando los articulos que son parte del despacho. El sistema los agrupará en paquetes automáticamente, según las reglas definidas en la cuenta.
account_id*
int
ID de la cuenta
origin_id*
int
ID del origen del envío
logistic_type
string
Código de la forma de despacho del envío.
Ejemplo: carrier_dropoff
Se recomienda explicitarlo basado en los resultados obtenidos en la cotización utilizar la opcion de envio deseada
service_type
string
Código de la forma de entrega del envío.
Ejemplo: standard_delivery
Se recomienda explicitarlo basado en los resultados obtenidos en la cotización utilizar la opcion de envio deseada
carrier_id
int
ID del transporte que hará la entrega.
Se recomienda explicitarlo basado en los resultados obtenidos en la cotización.
source
string (100)
Utilizado en algunas integraciones para identificar el canal de venta.
declared_value*
float
Valor declarado del envío. Monto que se asegurará. Para no utilizar seguro se debe enviar en cero.
destination.name*
string (100)
Nombre y apellido del destinatario
destination.street*
string (100)
Calle del domicilio de entrega.
Requerido solo en entregas a domicilio.
destination.street_number*
string (10)
Altura/nro de puerta del domicilio de entrega.
Requerido solo en entregas a domicilio.
destination.street_extras (190)
string
Referencias adicionales del domicilio como piso, departamento, nro de lote, etc.
Requerido solo en entregas a domicilio.
destination.point_id
int
ID de la ubicación de entrega.
Requerido solo cuando la entrega es en un punto de entrega.
destination.document*
string (50)
Número de documento (DNI, RUT, o lo que corresponda) del destinatario
destination.email*
email (150)
Dirección de correo electrónico del destinatario
destination.phone*
string (50)
Número de contacto del destinatario
destination.state*
string
Nombre del Estado del domicilio del destinatario.
AR: provincia
CL: región
CO: departamento
MX: estado
Requerido solo en entregas a domicilio.
destination.city*
string
Nombre de la ciudad del domicilio del destinatario.
AR: localidad
CL: comuna
CO: ciudad
MX: ciudad
Requerido solo en entregas a domicilio.
destination.zipcode*
string
Codigo postal de la dirección de destino.
Requerido solo en entregas a domicilio.
Dato no requerido en Chile y Colombia.
destination.country
string
Código ISO 3166-1 alfa-2 del país
Argentina: AR
Chile: CL
Colombia: CO
México: MX
destination*
object
Objeto con datos del destinatario
packages*
array[package]
Array de objetos Package.
El máximo de paquetes por envío es 99.
packages.*.weight*
int
Peso en gramos.
packages.*.classification_id
int
ID de clasificación de producto del paquete.
Si se omite se utilizará la clasificación General (1).
packages.*.height*
int
Alto del paquete, en centímetros.
packages.*.width*
int
Ancho del paquete, en centímetros.
packages.*.length*
int
Largo del paquete, en centímetros.
packages.*.description_1*
string (60)
Descripción del contenido (linea 1)
packages.*.description_3
string (60)
Descripción del contenido (linea 3)
packages.*.description_2
string (60)
Descripción del contenido (linea 2)
external_id*
string (30)
ID del envío en tus sistemas. Es para tu propia referencia.
El endpoint de cotización de una devolución nos permite obtener los precios y opciones para realizar la misma.
En cada cotización, se deberá indicar la cuenta, valor declarado del envío y detalle de paquetes e items que se devolverán.
Al hacer el request hay algunas particularidades con respecto a la definición de los paquetes e items que los componen que serán devueltos.
Particularidades en la definición de paquetes a devolver En caso de no indicar el array de packages con los paquetes que contendrá la devolución. El sistema interpreta que se devolverán todos los paquetes del envío con todos sus items definidos. Si el array de paquetes esta definido solo se cotizará la devolución de los paquetes que contenga dicho array.
Particularidades en la definición de items a devolver Para cada paquete que se indique en el array de paquetes se deberá indicar que items se devolverán. En caso de no indicar el array de items con los items que contendrán los paquetes de la devolución. El sistema interpreta que se devolverán todos los items del paquete indicado. Si el array de items esta definido dentro de un paquete solo se cotizará la devolución de los items que contenga dicho array.
POST
/v2/shipments/{id}/return/quote
Este request te permitirá obtener cotizaciones para una devolución de un envío, indicando los ítems específicos que forman parte de la devolución.
id*
int
ID del envío a cotizar una devolución
account_id*
int
ID de la cuenta
declared_value*
float
Valor declarado total del contenido. Monto que se utilizará para el seguro. Si no se va a asegurar el contenido, se puede indicar el valor 0.
packages*
array
Array de objetos packages.
packages.*.id*
int
ID del paquete del envio original que se quiere devolver
packages.*.items
array
Opcionalmente, se puede indicar qué items de un paquete se quieren incluir en la devolucion. Si se omite, se asume que se quiere devolver el paquete completo
package.*.items.*.id
int
ID de item del paquete
El endpoint de creación de una devolución nos permite crear la devolución, indicando todo el detalle del mismo y su contenido.
En cada creación, se deberá indicar la cuenta, valor declarado del envío y detalle de paquetes e items que se devolverán. También se indicará el service_type, logistic_type que deben haber sido obtenidos previamente de una cotización.
Al hacer el request hay algunas particularidades con respecto a la definición de los paquetes e items que los componen que serán devueltos.
Particularidades en la definición de paquetes a devolver En caso de no indicar el array de packages con los paquetes que contendrá la devolución. El sistema interpreta que se devolverán todos los paquetes del envío con todos sus items definidos. Si el array de paquetes esta definido solo se creará la devolución de los paquetes que contenga dicho array.
Particularidades en la definición de items a devolver Para cada paquete que se indique en el array de paquetes se deberá indicar que items se devolverán. En caso de no indicar el array de items con los items que contendrán los paquetes de la devolución. El sistema interpreta que se devolverán todos los items del paquete indicado. Si el array de items esta definido dentro de un paquete solo se creará la devolución de los items que contenga dicho array.
POST
/v2/shipments/{id}/return
id*
int
ID del envío a del cual crear una devolución
account_id*
int
ID de la cuenta
declared_value*
float
Valor declarado total del contenido. Monto que se utilizará para el seguro. Si no se va a asegurar el contenido, se puede indicar el valor 0.
packages*
array
Array de objetos packages.
packages.*.id*
int
ID del paquete del envio original que se quiere devolver
packages.*.items
array
Opcionalmente, se puede indicar qué items de un paquete se quieren incluir en la devolucion. Si se omite, se asume que se quiere devolver el paquete completo
package.*.items.*.id
int
ID de item del paquete
carrier_id
int
Para indicar con qué transporte crear la devolución (sale de la cotización).
logistic_type*
string
Código del modo de despacho (sale de la cotización)
Ej. carrier_dropoff
service_type*
string
Código del tipo de servicio (sale de la cotización)
Ej. return_origin
.
.