#
Welivery
#
1. Cotizar envío
POST /api/shipping/price
Devuelve un array con los servicios disponibles.
REQUEST
#
provider_data
provider: (Tipo de dato: string). Nombre del OOLL ("Urbano"). Campo obligatorio
USER: (Tipo de dato: string). Usuario provisto por Urbano. Campo obligatorio.
PASS: (Tipo de dato: string). Password provisto por Urbano. Campo obligatorio.
#
shippment_data
destino.postal.codigoPostal: (Tipo de dato: string). Código postal de destino. Campo obligatorio
destino.postal.codigoPostal: (Tipo de dato: string). Ciudad de destino. Campo obligatorio
fecha_alta: (Tipo de dato: string): Día a realizar el envío. Campo obligatorio
{
"provider_data":{
"provider": "Welivery",
"USER": "185c29dc24325934ee377cfda20e414c",
"PASS": "59d9d12fb6cf3241e5267ab1a2fce6dbc833bc5a"
},
"shippment_data": {
"origen": {
"postal": {
"codigoPostal": ""
}
},
"destino":{
"postal": {
"codigoPostal": "1191",
"ciudad": "CABA"
}
},
"id_externo": "",
"fecha_alta": "2024-04-09",
"modalidad_envio":"",
"currency": "",
"type": "",
"productoAEntregar": "",
"bultos": {
"kilos": "1.5" ,
"largoCm": "1",
"altoCm": "1",
"anchoCm": "1",
"volumenCm": "1.5",
"valorDeclaradoConImpuestos": "",
"detalle": ""
}
}
}
RESPONSE
- costo: Costo del envío.
{
"costo": 990.99
}
#
2. Generar Envío / Devolución
POST /api/shipping/create
El método permite generar un envío.
REQUEST
#
provider_data
provider: (Tipo de dato: string). Nombre del OOLL (Welivery). Campo obligatorio.
USER: (Tipo de dato: string). Api key para autorizar el envío de request. Campo obligatorio.
PASS: (Tipo de dato: string). Api secret para autorizar el envío de request. Campo obligatorio.
#
shippment_data
origen.postal.calle: (Tipo de dato: string). Campo obligatorio.
origen.postal.numero:(Tipo de dato: string). Campo obligatorio.
origen.postal.piso:(Tipo de dato: string). Campo opcional.
origen.postal.depto:(Tipo de dato: string). Campo opcional.
origen.postal.localidad: (Tipo de dato: string). Nombre de la ciudad de origen. Campo obligatorio.
origen.postal.codigoPostal: (Tipo de dato: string). Código postal la ciudad de origen. Campo obligatorio.
destino.postal.calle: (Tipo de dato: string). Campo obligatorio.
destino.postal.numero:(Tipo de dato: string). Campo obligatorio.
destino.postal.piso:(Tipo de dato: string). Campo opcional.
destino.postal.depto:(Tipo de dato: string). Campo opcional.
destino.postal.localidad: (Tipo de dato: string). Nombre de la ciudad de destino. Campo obligatorio.
destino.postal.codigoPostal: (Tipo de dato: string). Código Postal de la ciudad de destino. Campo obligatorio.
destino.postal.entreCalle: (Tipo de dato: string). Información entre calles. Campo obligatorio.
remitente.nombreCompleto:(Tipo de dato: string). Campo obligatorio.
destinatario.nombreCompleto:(Tipo de dato: string). Campo obligatorio.
destinatario.email: (Tipo de dato: string). Campo obligatorio.
destinatario.telefonos: (Tipo de dato: string). Campo obligatorio.
bultos.kilos: (Tipo de dato: integer). Peso en kg. Campo obligatorio.
bultos.volumenCm: (Tipo de dato: integer). Peso en cm3. Campo obligatorio.
bultos.detalle: (Tipo de dato: string). Id de la orden (no se puede repetir). Campo obligatorio.
type: (Tipo de dato: string). Tipo de envío. Valores posibles: 0 (envío a domicilio), 1 (retiro en domicilio). Campo obligatorio.
{
"provider_data": {
"provider": "Welivery",
"USER": "185c29dc24325934ee377cfda20e414c",
"PASS": "59d9d12fb6cf3241e5267ab1a2fce6dbc833bc5a"
},
"shippment_data": {
"identification": { "suscriberId": "", "customerNumber": null },
"systemInformation": { "id": "", "name": "", "version": "" },
"serviceConfiguration": {
"quantityOfLabels": 1,
"serviceTypeId": "",
"salesOrganization": "",
"originZipCodeForRouting": "",
"isReturnDocument": "false",
"returnDocument": { "type": "", "serviceId": "" }
},
"origen": {
"postal": {
"codigoPostal": "1414",
"calle": "camargo",
"numero": "900",
"piso": "",
"departamento": "",
"depto": "",
"localidad": "Buenos Aires",
"region": "",
"pais": "Argentina",
"entreCalle": "",
"codigo_ciudad": "",
"firstName": "",
"lastName": ""
}
},
"fecha_alta": "1",
"tipoServicio": "Domicilio",
"tipo_paquete": "ENECSM",
"id_externo": "9216",
"modalidad_envio": "D",
"currency": "2",
"direccion_envio": "chequear",
"correo": "andreani",
"type": 1,
"flow": "",
"destino": {
"sucursal": { "id": null },
"postal": {
"lastName": "",
"firstName": "",
"codigoPostal": "1425",
"calle": "Charcas",
"numero": "3526",
"piso": "",
"departamento": "",
"depto": "",
"localidad": "Capital federal",
"region": "",
"pais": "",
"entreCalle": "Charcas",
"codigo_ciudad": ""
}
},
"remitente": {
"nombreCompleto": "ace ace",
"email": "",
"documentoTipo": "",
"documentoNumero": "",
"telefonos": "",
"marca": ""
},
"destinatario": {
"nombreCompleto": "Segundo Depo",
"email": "prueba@pow.la",
"documentoTipo": "DNI",
"documentoNumero": "2342432",
"telefonos": "1112345678"
},
"productoAEntregar": "Cambio orden",
"PickUp": "false",
"codigoPickUp": null,
"bultos": {
"kilos": 3,
"largoCm": ",
"altoCm": ",
"anchoCm": ",
"volumenCm": 5000,
"cantidad": "",
"valorDeclaradoSinImpuestos": "",
"valorDeclaradoConImpuestos": 2,
"detalle": "RMA-9217",
"idCliente": ""
},
"items": [
{
"cantidad": "",
"kilos": "",
"largoCm": ",
"altoCm": ",
"anchoCm": ",
"volumenCm": "",
"valorContraReembolso": "",
"valorDeclaradoConImpuestos": "",
"sku": "",
"descripcion": ""
}
]
}
}
RESPONSE
numeroDeEnvio: Número de orden informada en datalle. Se utiliza para la obtención de etiqueta y el tracking (Estado de envío).
emision: Número de tracking.
url: url de la etiqueta.
{
"response": "Success",
"providerStatus": "Creado",
"numeroDeEnvio": "RMA-9217",
"emision": "17552207",
"sucursalDeDistribucion": {
"id": null,
"descripcion": ""
},
"sucursalDeRendicion": null,
"sucursalDeImposicion": null,
"numeroDePermisionaria": null,
"descripcionServicio": "",
"etiqueta": "",
"url": "https://test.welivery.lat/site/tracking_label_m/t/bb16e605351d03e18e8e330f345ccd438b5a9789/op/0/label.pdf"
}
#
3. Obtener etiqueta
GET /api/shipping/etiqueta/:id
Se emplea para volver a obtener la url de la etiqueta (no genera etiqueta, obtiene la ya generada en el envío).
REQUEST
- id: Número de envío obtenido en "Generar envío". Va en el id de la url como ruta parametrizada. Campo obligatorio.
Todos estos campos van en el header:
provider: Nombre del OOLL (Welivery). Campo obligatorio.
USER: (Tipo de dato: string). Usuario. Campo obligatorio.
PASS: (Tipo de dato: string). Password. Campo obligatorio.
provider: Welivery
USER: 185c29dc24325934ee377cfda20e414c
PASS: 59d9d12fb6cf3241e5267ab1a2fce6dbc833bc5a
RESPONSE
Devuelve la url de la etiqueta.
#
4. Obtener tracking (Estado de envío)
GET /api/shipping/:id
Se emplea para rastrear el envío y obtener su status.
REQUEST
- id: Número de envío obtenido en "Generar envío". Va en el id de la url como ruta parametrizada. Campo obligatorio.
Todos estos campos van en el header:
provider: Nombre del OOLL (Welivery). Campo obligatorio.
USER: (Tipo de dato: string). Usuario. Campo obligatorio.
PASS: (Tipo de dato: string). Password. Campo obligatorio.
provider: Welivery
USER: 185c29dc24325934ee377cfda20e414c
PASS: 59d9d12fb6cf3241e5267ab1a2fce6dbc833bc5a
RESPONSE
providerStatus: Código del estado del envío.
descripcionServicio: Especifica el código de estado de envío.
url: Url donde se puede consultar el estado actual del envío y los estados históricos.
{
"response": "Success",
"providerStatus": "PENDIENTE",
"numeroDeEnvio": "123459",
"sucursalDeDistribucion": {
"id": null,
"descripcion": null
},
"sucursalDeRendicion": null,
"sucursalDeImposicion": null,
"numeroDePermisionaria": null,
"descripcionServicio": ""
}
#
5. Actualización de datos de envío
POST /api/shipping/:id
El método permite modificar datos del envío generado. Asume los mismos campos que el create.
NOTA: debe agregarse el número de envío generado como id e incluirlo en el campo "detalle" del body del request.
REQUEST
- id: Número de envío obtenido en "Generar envío". Va en el id de la url como ruta parametrizada. Campo obligatorio.
#
provider_data
provider: (Tipo de dato: string). Nombre del OOLL (Welivery). Campo obligatorio.
USER: (Tipo de dato: string). Api key para autorizar el envío de request. Campo obligatorio.
PASS: (Tipo de dato: string). Api secret para autorizar el envío de request. Campo obligatorio.
#
shippment_data
origen.postal.calle: (Tipo de dato: string). Campo obligatorio.
origen.postal.numero:(Tipo de dato: string). Campo obligatorio.
origen.postal.piso:(Tipo de dato: string). Campo opcional.
origen.postal.depto:(Tipo de dato: string). Campo opcional.
origen.postal.localidad: (Tipo de dato: string). Nombre de la ciudad de origen. Campo obligatorio.
origen.postal.codigoPostal: (Tipo de dato: string). Código postal la ciudad de origen. Campo obligatorio.
destino.postal.calle: (Tipo de dato: string). Campo obligatorio.
destino.postal.numero:(Tipo de dato: string). Campo obligatorio.
destino.postal.piso:(Tipo de dato: string). Campo opcional.
destino.postal.depto:(Tipo de dato: string). Campo opcional.
destino.postal.localidad: (Tipo de dato: string). Nombre de la ciudad de destino. Campo obligatorio.
destino.postal.codigoPostal: (Tipo de dato: string). Código Postal de la ciudad de destino. Campo obligatorio.
destino.postal.entreCalle: (Tipo de dato: string). Información entre calles. Campo obligatorio.
remitente.nombreCompleto:(Tipo de dato: string). Campo obligatorio.
destinatario.nombreCompleto:(Tipo de dato: string). Campo obligatorio.
destinatario.email: (Tipo de dato: string). Campo obligatorio.
destinatario.telefonos: (Tipo de dato: string). Campo obligatorio.
bultos.kilos: (Tipo de dato: integer). Peso en kg. Campo obligatorio.
bultos.volumenCm: (Tipo de dato: integer). Peso en cm3. Campo obligatorio.
bultos.detalle: (Tipo de dato: string). Id de la orden (no se puede repetir). Campo obligatorio.
type: (Tipo de dato: string). Tipo de envío. Valores posibles: 0 (envío a domicilio), 1 (retiro en domicilio). Campo obligatorio.
{
"provider_data": {
"provider": "Welivery",
"USER": "185c29dc24325934ee377cfda20e414c",
"PASS": "59d9d12fb6cf3241e5267ab1a2fce6dbc833bc5a"
},
"shippment_data": {
"identification": { "suscriberId": "", "customerNumber": null },
"systemInformation": { "id": "", "name": "", "version": "" },
"serviceConfiguration": {
"quantityOfLabels": 1,
"serviceTypeId": "",
"salesOrganization": "",
"originZipCodeForRouting": "",
"isReturnDocument": "false",
"returnDocument": { "type": "", "serviceId": "" }
},
"origen": {
"postal": {
"codigoPostal": "1414",
"calle": "camargo",
"numero": "900",
"piso": "",
"departamento": "",
"depto": "",
"localidad": "Buenos Aires",
"region": "",
"pais": "Argentina",
"entreCalle": "",
"codigo_ciudad": "",
"firstName": "",
"lastName": ""
}
},
"fecha_alta": "1",
"tipoServicio": "Domicilio",
"tipo_paquete": "ENECSM",
"id_externo": "9216",
"modalidad_envio": "D",
"currency": "2",
"direccion_envio": "chequear",
"correo": "andreani",
"type": 1,
"flow": "",
"destino": {
"sucursal": { "id": null },
"postal": {
"lastName": "",
"firstName": "",
"codigoPostal": "1425",
"calle": "Charcas",
"numero": "3526",
"piso": "",
"departamento": "",
"depto": "",
"localidad": "Capital federal",
"region": "",
"pais": "",
"entreCalle": "Charcas",
"codigo_ciudad": ""
}
},
"remitente": {
"nombreCompleto": "ace ace",
"email": "",
"documentoTipo": "",
"documentoNumero": "",
"telefonos": "",
"marca": ""
},
"destinatario": {
"nombreCompleto": "Segundo Depo",
"email": "prueba@pow.la",
"documentoTipo": "DNI",
"documentoNumero": "2342432",
"telefonos": "1112345678"
},
"productoAEntregar": "Cambio orden",
"PickUp": "false",
"codigoPickUp": null,
"bultos": {
"kilos": 3,
"largoCm": ",
"altoCm": ",
"anchoCm": ",
"volumenCm": 5000,
"cantidad": "",
"valorDeclaradoSinImpuestos": "",
"valorDeclaradoConImpuestos": 2,
"detalle": "RMA-9217",
"idCliente": ""
},
"items": [
{
"cantidad": "",
"kilos": "",
"largoCm": ",
"altoCm": ",
"anchoCm": ",
"volumenCm": "",
"valorContraReembolso": "",
"valorDeclaradoConImpuestos": "",
"sku": "",
"descripcion": ""
}
]
}
}
RESPONSE
numeroDeEnvio: Número de orden informada en datalle. Se utiliza para la obtención de etiqueta y el tracking (Estado de envío).
emision: Número de tracking.
url: url de la etiqueta.
{
"response": "Success",
"providerStatus": "Actualizaco",
"numeroDeEnvio": "RMA-9217",
"emision": "17552207",
"sucursalDeDistribucion": {
"id": null,
"descripcion": ""
},
"sucursalDeRendicion": null,
"sucursalDeImposicion": null,
"numeroDePermisionaria": null,
"descripcionServicio": "",
"etiqueta": "",
"url": "https://test.welivery.lat/site/tracking_label_m/t/bb16e605351d03e18e8e330f345ccd438b5a9789/op/0/label.pdf"
}
#
6. Cancelación de envío
GET /api/shipping/cancel/:id
Se emplea para cancelar el envío.
REQUEST
- id: Número de envío obtenido en "Generar envío". Va en el id de la url como ruta parametrizada. Campo obligatorio.
Todos estos campos van en el header:
provider: Nombre del OOLL (Welivery). Campo obligatorio.
USER: (Tipo de dato: string). Usuario. Campo obligatorio.
PASS: (Tipo de dato: string). Password. Campo obligatorio.
provider: Welivery
USER: 185c29dc24325934ee377cfda20e414c
PASS: 59d9d12fb6cf3241e5267ab1a2fce6dbc833bc5a
RESPONSE
- numeroDeEnvio: Número de envío cancelado.
{
"response": "Success",
"numeroDeEnvio": "123459"
}