#
Servientrega
#
1. Cotización
POST /api/shipping/price
Se utiliza para cotizar un envío.
REQUEST
#
provider_data
provider: (Tipo de dato: string). Nombre del OOLL (Servientrega). Campo obligatorio.
USER: (Tipo de dato: string). Usuario de Servientrega de la aplicación Sisclinet. Campo obligatorio.
PASS: (Tipo de dato: string).Contraseña asociada al usuario de la aplicación Sisclinet. Campo obligatorio.
CONTRATO_SUCURSAL: (Tipo de dato: string). Código de facturación relacionado con el cliente y con el usuario de Sisclinet. Campo obligatorio.
#
shippment_data
origen.postal.codigoPostal: (Tipo de dato: string). Código DANE de la ciudad de origen. Agregar 3 ceros más al final (Ej: 11001 = 11001000 ). Campo obligatorio.
destino.postal.codigoPostal: (Tipo de dato: string). Código DANE de la ciudad de destino. Agregar 3 ceros más al final (Ej: 11001 = 11001000 ). Campo obligatorio.
id_externo: (Tipo de dato: string). Número de recaudo del envío que se desea cotizar. Valores: "1" nomal, "2" hoy mismo, "3" cero horas, "4" 48 hs, "5" 72 hs. Campo obligatorio.
fecha_alta: (Tipo de dato: string). Identificador del tiempo de entrega del envío a cotizar. Campo obligatorio.
modalidad_envio: (Tipo de dato: boolean) "True" si el envío a cotizar tendría logística para cobro. Campo obligatorio.
currency: (Tipo de dato: string). Identificador de la forma de pago a cotizar. Valores: "2" crédito, "4" pago contraentrega. Campo obligatorio.
type: (Tipo de dato: string). Identificador del medio de transporte. Valores: "1" terrestre, "2" aéreo. Campo obligatorio.
productoAEntregar: (Tipo de dato: string). Identificador del producto que se va a cotizar. Valor: enviar en "2". Campo obligatorio.
bultos.kilo: (Tipo de dato: float). Peso del paquete en kilogramos, separado por punto. Campo obligatorio.
bultos.largoCm: (Tipo de dato: float). Largo del paquete en centímetros, separado por punto. Campo obligatorio.
bultos.altoCm: (Tipo de dato: float). Alto del paquete en centímetros, separado por punto. Campo obligatorio.
bultos.anchoCm: (Tipo de dato: float). Ancho del paquete en centímetros, separado por punto. Campo obligatorio.
bultos.valorDeclaradoConImpuestos: (Tipo de dato: string). Valor declarado del paquete. Campo obligatorio.
bultos.detalle: (Tipo de dato: string). Número de piezas que se va a cotizar. Campo obligatorio.
{
"provider_data":{
"provider": "Servientrega",
"USER": "Luis1937",
"PASS": "MZR0zNqnI/KplFlYXiFk7m8/G/Iqxb3O",
"CONTRATO_SUCURSAL": "SER408"
},
"shippment_data": {
"origen": {
"postal": {
"codigoPostal": "11001000"
}
},
"destino":{
"postal": {
"codigoPostal": "05001000"
}
},
"id_externo": "123456",
"fecha_alta": "2",
"modalidad_envio":true,
"currency": "2",
"type": "2",
"productoAEntregar": "2",
"bultos": {
"kilos": 1.0,
"largoCm": 1.0,
"altoCm": 1.0,
"anchoCm": 1.0,
"valorDeclaradoConImpuestos": "6000",
"detalle": "1"
}
}
}
RESPONSE
costo: Devuelve el costo del envío.
{
"costo": 5527,
"tipoServicio": ""
}
#
2. Generar envío
POST /api/shipping/create
Se utiliza para generar un envío.
REQUEST
#
provider_data
provider: (Tipo de dato: string). Nombre del OOLL (Servientrega). Campo obligatorio.
USER: (Tipo de dato: string). Usuario de Servientrega de la aplicación Sisclinet. Campo obligatorio.
PASS: (Tipo de dato: string).Contraseña asociada al usuario de la aplicación Sisclinet. Campo obligatorio.
CONTRATO_SUCURSAL: (Tipo de dato: string). Código de facturación relacionado con el cliente y con el usuario de Sisclinet. Campo obligatorio.
#
shippment_data
origen.postal.calle: (Tipo de dato: string). Campo obligatorio.
origen.postal.numero:(Tipo de dato: string). Campo obligatorio.
origen.postal.localidad: (Tipo de dato: string). Código dane o nombre de la ciudad de origen (Ej: Bogota). Campo obligatorio.
origen.postal.region: (Tipo de dato: string). Departamento al cual pertenece la ciudad de destino (Ej: Curdinamarca). Campo obligatorio.
tipoServicio: (Tipo de dato: string). "0" si es envío a dirección del destinatario, "1" si es pickup. Campo obligatorio.
fecha_alta: (Tipo de dato: string). tipo de duración del trayecto. Valores: "1" nomal, "2" hoy mismo, "3" cero horas, "4" 48 hs, "5" 72 hs. Campo obligatorio.
modalidad_envio: (Tipo de dato: string). Tipo de trayecto. Valores: "1" nacional, "2" internacional. Campo obligatorio.
currency: (Tipo de dato: string). forma de pago. Valores: "2" crédito, "4" pago contraentrega. Campo obligatorio.
type: (Tipo de dato: string). Medio de transporte. Valores: "1" terrestre, "2" aéreo. 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 obligatorio.
destino.postal.depto: (Tipo de dato: string). Campo obligatorio.
destino.postal.localidad: (Tipo de dato: string). Código dane o nombre de la ciudad de destino (Ej: Bogota). Campo obligatorio.
destino.postal.region: (Tipo de dato: string). Departamento al cual pertenece la ciudad de destino (Ej: Curdinamarca). Campo obligatorio.
remitente.nombreCompleto: (Tipo de dato: string). Campo obligatorio.
remitente.email:(Tipo de dato: string). Campo obligatorio.
remitente.telefonos: (Tipo de dato: string). Campo obligatorio.
remitente.documentoNumero: (Tipo de dato: string). Campo obligatorio.
destinatario.nombreCompleto: (Tipo de dato: string). Campo obligatorio.
destinatario.documentoNumero: (Tipo de dato: string). Campo obligatorio.
destinatario.email: (Tipo de dato: string). Campo obligatorio.
destinatario.telefonos: (Tipo de dato: string). Campo obligatorio.
bultos.valorDeclaradoConImpuestos: (Tipo de dato: string). Valor declarado del paquete. Campo obligatorio.
bultos.kilo: (Tipo de dato: float). Peso del paquete en kilogramos, separado por punto. Campo obligatorio.
bultos.largoCm:(Tipo de dato: float). Largo del paquete en centímetros, separado por punto. Campo obligatorio.
bultos.altoCm: (Tipo de dato: float). Alto del paquete en centímetros, separado por punto. Campo obligatorio.
bultos.anchoCm: (Tipo de dato: float). Ancho del paquete en centímetros, separado por punto. Campo obligatorio.
bultos.detalle: (Tipo de dato: string). Número de piezas que se va a enviar. Campo obligatorio.
{
"provider_data": {
"provider": "Servientrega",
"CONTRATO_SUCURSAL": "SER408",
"USER": "Luis1937",
"PASS": "MZR0zNqnI/KplFlYXiFk7m8/G/Iqxb3O"
},
"shippment_data": {
"origen": {
"postal": {
"codigoPostal": "",
"calle": "Calle 7",
"numero": "120",
"piso": "2",
"depto": "C",
"localidad": "Bogota",
"region": "Cundinamarca",
"pais": "Colombia",
"entreCalle": ""
}
},
"fecha_alta": "1",
"tipoServicio": "1",
"tipo_paquete": "",
"id_externo": "",
"modalidad_envio": "1",
"direccion_envio": "",
"correo": "",
"currency": "2",
"type": "1",
"destino": {
"sucursal": {
"id": ""
},
"postal": {
"codigoPostal": "",
"calle": "calle 45",
"numero": "1756",
"piso": "2",
"depto": "C",
"localidad": "Bogota",
"region": "Cundinamarca",
"pais": "",
"entreCalle": ""
}
},
"remitente": {
"nombreCompleto": "Alberto Lopez",
"email": "remitente@andreani.com",
"documentoTipo": "",
"documentoNumero": "33111222",
"telefonos": "113332244"
},
"destinatario": {
"nombreCompleto": "Juana Gonzalez",
"email": "destinatario@andreani.com",
"documentoTipo": "",
"documentoNumero": "33999888",
"telefonos": "1112345678"
},
"productoAEntregar": "",
"bultos": {
"kilos": 2,
"largoCm": 1.0,
"altoCm": 5.0,
"anchoCm": 1.0,
"volumenCm": "",
"valorDeclaradoSinImpuestos": "",
"valorDeclaradoConImpuestos": 6000,
"detalle": "1",
"idCliente": ""
}
}
}
RESPONSE
- numeroDeEnvio: Número con el que se registró la transacción.
- etiqueta: Se debe utilizar en el campo "CODIGO_CLIENTE" del método "Imprimir etiqueta".
{
"response": "Success",
"providerStatus": "Creado",
"numeroDeEnvio": "6100216012",
"hash": null,
"sucursalDeDistribucion": {
"id": null,
"descripcion": ""
},
"sucursalDeRendicion": null,
"sucursalDeImposicion": null,
"numeroDePermisionaria": null,
"descripcionServicio": null,
"etiqueta": "Ln7fqFG1hDwRLa+25qt/5w=="
}
#
3. Imprimir etiqueta
GET /api/shipping/etiqueta/:id
Se emplea para imprimir la etiqueta del 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 (Servientrega). Campo obligatorio.
user: Usuario de Servientrega de la aplicación Sisclinet. Campo obligatorio.
pass: Contraseña asociada al usuario de la aplicación Sisclinet. Campo obligatorio.
codigo: Código de facturación relacionado con el cliente y con el usuario de Sisclinet. Campo obligatorio.
archivo: Etiqueta devuelta en "Generar envío". Campo obligatorio.
provider: Servientrega
use: Luis1937
pass: MZR0zNqnI/KplFlYXiFk7m8/G/Iqxb3O
codigo: SER408
archivo: +EzmtZNqEBwRLa+25qt/5w==
RESPONSE
Devuelve la etiqueta en formato Base 64.
#
4. Obtener tracking
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 (Id prueba: 2176548849). Campo obligatorio.
Todos estos campos van en el header:
provider: Nombre del OOLL (Servientrega). Campo obligatorio.
cliente: Número de identificación del cliente. Campo obligatorio.
provider: Servientrega
cliente: 800018359
RESPONSE
- providerStatus: Define el status del envío.
{
"response": "Success",
"providerStatus": "ENTREGADO",
"numeroDeEnvio": "2176548849",
"sucursalDeDistribucion": {
"id": null,
"descripcion": null
},
"sucursalDeRendicion": null,
"sucursalDeImposicion": null,
"numeroDePermisionaria": null,
"descripcionServicio": "",
"etiqueta": ""
}
#
5. Pickup
POST /api/pickup/create_pickup
Se utiliza para que sea el cliente quien recoja el paquete en el lugar indicado. Para hacer uso de esta funcionalidad se debe primero generar un envío con "tipoServicio" en valor "1"
REQUEST
#
provider_data
provider: (Tipo de dato: string). Nombre del OOLL (Servientrega). Campo obligatorio.
USER: (Tipo de dato: string). Usuario de Servientrega de la aplicación Sisclinet. Campo obligatorio.
PASS: (Tipo de dato: string).Contraseña asociada al usuario de la aplicación Sisclinet. Campo obligatorio.
CONTRATO_SUCURSAL: (Tipo de dato: string). Código de facturación relacionado con el cliente y con el usuario de Sisclinet. Campo obligatorio.
#
shippment_data
AccountNumber: (Tipo de dato: string). Número de envío generado. Campo obligatorio.
PickupDate: (Tipo de dato: string). Es la fecha en la cual se desea realizar la solicitud de recolección. Campo obligatorio.
PickupType: (Tipo de dato: string). Es la hora en la que se desea realizar la solicitud de recolección. Formato HH:mm. Campo obligatorio.
{"provider_data":
{
"provider": "Servientrega",
"USER": "Luis1937",
"PASS": "MZR0zNqnI/KplFlYXiFk7m8/G/Iqxb3O",
"CONTRATO_SUCURSAL": "SER408"
},
"pickup_data":
{
"AccountNumber": "6100214693",
"RequesterName": "",
"RequesterEmail": "",
"PickupType": "16:00",
"PickupDate": "17/06/2023",
"PickupAddress": {
"ShortName": "",
"Country": "",
"PostalCode": "",
"State": "",
"City": "",
"Neighborhood": "",
"Address1": "",
"ExternalNumber": ""
},
"PickupPackageList": [
{
"PackageType": "",
"Length": "",
"Width": "",
"Height": "",
"Weight": "",
"Quantity": "",
"Waybills": [
{
"WaybillNumber": ""
}
]
}],
"PickupAlert_Primary": {
"Name": "",
"EmailAddress": "",
"PhoneNumber": ""
}
}
}
RESPONSE
numeroDeEnvio: Es el número de la solicitud de recolección generado con la cual quedó registrada la solicitud en el sistema.
sucursalDeDistribucion.descripcion: Calle y número donde se deberá retirar el producto. La dirección donde retirar el producto será la ingresada shippment_data.origen de Generar envío.
{
"response": "Success",
"providerStatus": "Creado",
"numeroDeEnvio": "13383550",
"hash": null,
"sucursalDeDistribucion": {
"id": "",
"descripcion": "Calle 7 120"
}
}