NAV Navbar
shell

Introducción

Para poder realizar los pedidos de los servicios de Chazki se habilitaron endpoints para el registro del delivery y la consulta del estado de los pedidos.

Estos servicios se encuentran registrados en el dominio propiedad de chazki y se detallan en el apartado a continuación.

Encuentra más acerca de Chazki aquí. Vea también nuestros Términos y condiciones.

Autenticación

Usar el siguiente código para la autenticación:

# Se puede enviar el encabeza en cada petición
curl "https://sandboxintegracion.chazki.com:8443/chazkiServices/delivery/create/deliveryService"
  -H "chazki-api-key: YOUR_CHAZKI_API_KEY"

Reemplazar YOUR_CHAZKI_API_KEY por su API key.

Empleamos un Key para brindar acceso a nuestro API.

Nuestro API espera que el Chazki API Key sea incluído en el header de cada petición al servidor, como se muestra a continuación:

chazki-api-key: YOUR_CHAZKI_API_KEY

Servicios

Registro de un Delivery

curl "https://sandboxintegracion.chazki.com:8443/chazkiServices/delivery/create/deliveryService"
  -H "chazki-api-key: YOUR_CHAZKI_API_KEY"

Estructura JSON de envío para el registro de un delivery:

[
    {
        "storeId": "23434j3808e4b04d9cfec50112",
        "branchId": "234kj2l3k4j34e4b04d9cfec50115",
        "deliveryTrackCode": "0000001061015",
        "proofPayment": "Boleta",
        "deliveryCost": 0,
        "mode": "Regular",
        "time": "",
        "paymentMethod": "Pagado",
        "country": "PE",
        "listItemSold": [
            {
                "name": "Asus - Tablet Memo Pad ME70CX-1A022A 7 Android 4.3 1GB 8GB - Negro",
                "currency": "PEN",
                "price": 255,
                "weight": 0.9,
                "volumen": 0.9,
                "quantity": 1,
                "unity": "Paquete",
                "size": "S"
            }
        ],
        "notes": "El paquete lo deja en la recepción del edificio",
        "documentNumber": "12345678987",
        "name_tmp": "",
        "lastName": "",
        "companyName": "Zapateria CCE",
        "email": "cce@gmail.com",
        "phone": "989555879",
        "documentType": "RUC",
        "addressClient": [
            {
                "nivel_2": "LIMA",
                "nivel_3": "LIMA",
                "nivel_4": "SAN BORJA",
                "name": "Calle Bronzino 501",
                "reference": "Alt. Cavallini",
                "alias": "Oficina central",
                "position": {
                    "latitude": 0,
                    "longitude": 0
                }
            }
        ]
    }
]

Estructura JSON de los datos de salida de nuestro API:

{
    "response": "",
    "descriptionResponse": "",
    "codeDelivery": ""
}

Este endpoint permite registrar un delivery o ruta. Dado que en el envío es un arreglo, se pueden registrar varios puntos a donde se desea que llegue el Chazki, por lo tanto, se forma una ruta; caso contrario, se puede registrar solo un punto de llegada.

HTTP Request

POST https://sandboxintegracion.chazki.com:8443/chazkiServices/delivery/create/deliveryService

Estructura de envío

Atributo Tipo Descripción Proveedor Obligatorio
storeId String Campo referido a la tienda Chazki SI
branchId String Lugar o Sucursal desde donde se origina el pedido Chazki SI
deliveryTrackCode String Código que identifica el pedido, este código debe ser único Cliente SI
proofPayment String Evidencia física que tendrá el empaque y será entregada al cliente final. BOLETA O FACTURA Cliente SI
deliveryCost Float Es 0, salvo que el cliente cobre un monto adicional por la entrega Cliente SI
mode String Puede ser "Regular", "Express" o "Programado", dependiendo del tipo de servicio deseado Cliente SI
time String Ventana horaria si el servicio es "Programado". Ejemplo: 9-13 Cliente SI
paymentMethod String Puede ser "Pagado" o "Efectivo" Cliente SI
country String País donde se genera el delivery (PE: Perú, MX: México, AR: Argentina) Cliente SI
listItemSold Collection Lista de ítems enviados como parte del delivery
name String Descripción del producto Cliente SI
currency String Moneda. Por defecto "PEN" Cliente SI
price Double Precio. En caso sea efectivo debe ser el precio real, o referencial en caso de ser pagado. Cliente NO (colocar 0)
weight Double Peso referencial del paquete Cliente NO (colocar 0)
volumen Double Peso referencial del paquete, dato para el cálculo de factuación Cliente NO (colocar 0)
quantity Integer Cantidad de ítems Cliente SI
unity String Unidad de outer pack Cliente SI
size String Unidad de medida del pedido (XS, S, M, L) Cliente SI
notes String Datos adicionales, que facilitan la entrega. Puede ser vacío Cliente NO (colocar "")
documentNumber String Documento del cliente Cliente SI
name_tmp String Nombre del que recibe el pedido/Persona Natural Cliente SI
lastName String Apellido del que recibe el pedido/Persona Natural Cliente SI
companyName String En caso el envío es realizado a una empresa Cliente SI
email String Correo electrónico del cliente Cliente SI
phone String Teléfono del cliente Cliente SI
documentType String Tipo de documento del cliente DNI, RUC y CDE (Carnet de extranjería) Cliente SI
AddressClient Collection Información del cliente
name String Dirección del cliente Cliente SI
nivel_2 String Departamento de la dirección del cliente Cliente SI
nivel_3 String Provincia de la dirección del cliente Cliente SI
nivel_4 String Distrito de la dirección del cliente Cliente SI
reference String Referencia a la dirección del cliente Cliente SI
alias String Alias del punto de envío Cliente SI
Position
latitude Double Latitud, en caso de ser desconocida colocar 0 Cliente SI
longitude Double Longitud, en caso de ser desconocida colocar 0 Cliente SI

Estructura de respuesta del API

Atributo Tipo Descripción Proveedor
response Integer Código de respuesta (0: no se pudo efectuar, 1: se registró correctamente)
  • 0: Error a nivel funcional, ejemplo: "Datos incorrectos en la trama"
  • 1: Éxito
  • 99: Error técnico, puede ser considerado como caída del servidor
Chazki
descriptionResponse String Descripción de la respuesta
  • 0: "FAILED"
  • 1: "SUCCESS"
  • 99: "ERROR: faltan parámetros, NullpointerException"
Chazki
codeDelivery String Código Track del delivery. Si es un conjunto de deliveries retornará separado por coma (",") Chazki

Consulta de Estado y Posición del Chazki

curl "https://sandboxintegracion.chazki.com:8443/chazkiServices/track/select/deliveryCode?code=XXXX&store=XXXX"
  -H "chazki-api-key: YOUR_CHAZKI_API_KEY"

El comando anterior retorna una estructura JSON como la siguiente:

{
    "position": {
        "latitude": 0,
        "longitude": 0
    },
    "status": "",
    "timestamp": "",
    "rd": "",
    "cel": "",
    "motivo": ""
}

Esta API nos permite ver el movimiento del Chazki y el estado en que se encuentra el delivery.

HTTP Request

GET https://sandboxintegracion.chazki.com:8443/chazkiServices/track/select/deliveryCode?code=XXXX&store=XXXX

URL Parameters

Parámetro Descripción Tipo Proveedor Obligatorio
code Código track del delivery String Cliente SI
store Código de la empresa String Cliente SI

Resultado

Atributo Descripción Tipo Proveedor
position Retorna los puntos de latitud y longitu String Chazki
status Estado en que se encuentra el delivery String Chazki
timestamp Fecha de la última actualización de la posición del Chazki String Chazki
rd Nombre y apellido del Chazki String Chazki
motivo El motivo se visualiza si es que ocurrió alguna falla String Chazki

Historial de Estados

curl "https://sandboxintegracion.chazki.com:8443/chazkiServices/delivery/status/record?code=XXXX&store=XXXX"
  -H "chazki-api-key: YOUR_CHAZKI_API_KEY"

El comando anterior retorna una estructura JSON como la siguiente:

{
    "response": 1,
    "descriptionResponse": "SUCCESS",
    "messages": "",
    "service_1": [
        {
            "status": "Nuevo",
            "date": "26/04/2018 09:26:03"
        },
        {
            "status": "Aceptado",
            "date": "26/04/2018 10:26:03"
        },
        {
            "status": "Recogido",
            "date": "26/04/2018 11:26:03"
        },
        {
            "status": "Fallo Entrega",
            "date": "26/04/2018 12:26:03",
            "reason": "NE - No se encuentra el cliente"
        }
    ],
    "service_2": [
        {
            "status": "Aceptado",
            "date": "26/04/2018 10:26:03"
        },
        {
            "status": "Recogido",
            "date": "26/04/2018 11:26:03"
        },
        {
            "status": "Entregado",
            "date": "26/04/2018 12:26:03"
        }
    ]
}

Esta API nos permite ver los estados por los que paso el delivery agrupados por servicios. La agrupación de servicios hace referencia a los intentos que se realizó para la entrega del delivery.

HTTP Request

GET https://sandboxintegracion.chazki.com:8443/chazkiServices/delivery/status/record?code=XXXX&store=XXXX

URL Parameters

Parámetro Descripción Tipo Proveedor Obligatorio
code Código track del delivery String Cliente SI
store Código de la empresa String Cliente SI

Resultado

Atributo Descripción Tipo Proveedor
response Respuesta de la petición (0: Error, 1: OK, 99: ERROR) Integer Chazki
descriptionResponse Descripción breve del código de error String Chazki
message Mensaje de respuesta si es que el valor de "response" es 0 o 99 String Chazki
Service Servicios por el cual pasó el delivery String Chazki
status Estado del delivery String Chazki
date Fecha de estado String Chazki
reason Motivo si el estado fue "Fallo Recojo" o "Fallo Entrega" String Chazki

Logística Inversa

curl "https://sandboxintegracion.chazki.com:8443/chazkiServices/delivery/create/deliveryService"
  -H "chazki-api-key: YOUR_CHAZKI_API_KEY"

Estructura JSON de envío para el registro de un delivery:

[
    {
        "storeId": "23434j3808e4b04d9cfec50112",
        "branchId": "234kj2l3k4j34e4b04d9cfec50115",
        "deliveryTrackCode": "0000001061015",
        "proofPayment": "Boleta",
        "deliveryCost": 0,
        "mode": "Regular",
        "time": "",
        "paymentMethod": "Pagado",
        "country": "PE",
        "listItemSold": [
            {
                "name": "Asus - Tablet Memo Pad ME70CX-1A022A 7 Android 4.3 1GB 8GB - Negro",
                "currency": "PEN",
                "price": 255,
                "weight": 0.9,
                "volumen": 0.9,
                "quantity": 1,
                "unity": "Paquete",
                "size": "S"
            }
        ],
        "notes": "El paquete lo deja en la recepción del edificio",
        "documentNumber": "12345678987",
        "name_tmp": "",
        "lastName": "",
        "companyName": "Zapateria CCE",
        "email": "cce@gmail.com",
        "phone": "989555879",
        "documentType": "RUC",
        "addressClient": [
            {
                "nivel_2": "LIMA",
                "nivel_3": "LIMA",
                "nivel_4": "SAN BORJA",
                "name": "Calle Bronzino 501",
                "reference": "Alt. Cavallini",
                "alias": "Oficina central",
                "position": {
                    "latitude": 0,
                    "longitude": 0
                }
            }
        ],
        "depotRequestData": {
            "nameDepot": "C Cívico",
            "contactName": "",
            "contactMovil": "(01) 433 8318",
            "address": {
                "name": "Av. Garcilazo de la Vega Nro 1337 Int. 2011 C.C. Real Plaza Centro Cívico",
                "department": "LIMA",
                "province": "LIMA",
                "district": "LIMA",
                "reference": "",
                "position": {
                    "latitude": -12.056538775523,
                    "longitude": -77.037388086319
                }
            }
        }
    }
]

Estructura JSON de los datos de salida de nuestro API:

{
    "response": "",
    "descriptionResponse": "",
    "codeDelivery": ""
}

Esta API nos permite poder realizar logística inversa en caso se necesite recoger pedidos devueltos por el cliente. Para este caso, se ha agregado en la estructura el objeto depotRequestData, en el que se enviarán los datos correspondientes a la ubicación de recojo del pedido devuelto.

HTTP Request

POST https://sandboxintegracion.chazki.com:8443/chazkiServices/delivery/create/deliveryService

Estructura de envío

Atributo Tipo Descripción Proveedor Obligatorio
storeId String Campo referido a la tienda Chazki SI
branchId String Lugar o Sucursal desde donde se origina el pedido Chazki SI
deliveryTrackCode String Código que identifica el pedido, este código debe ser único Cliente SI
proofPayment String Evidencia física que tendrá el empaque y será entregada al cliente final. BOLETA O FACTURA Cliente SI
deliveryCost Float Es 0, salvo que el cliente cobre un monto adicional por la entrega Cliente SI
mode String Puede ser "Regular", "Express" o "Programado", dependiendo del tipo de servicio deseado Cliente SI
time String Ventana horaria si el servicio es "Programado". Ejemplo: 9-13 Cliente SI
paymentMethod String Puede ser "Pagado" o "Efectivo" Cliente SI
country String País donde se genera el delivery (PE: Perú, MX: México, AR: Argentina) Cliente SI
listItemSold Collection Lista de ítems enviados como parte del delivery
name String Descripción del producto Cliente SI
currency String Moneda. Por defecto "PEN" Cliente SI
price Double Precio. En caso sea efectivo debe ser el precio real, o referencial en caso de ser pagado. Cliente NO (colocar 0)
weight Double Peso referencial del paquete Cliente NO (colocar 0)
volumen Double Peso referencial del paquete, dato para el cálculo de factuación Cliente NO (colocar 0)
quantity Integer Cantidad de ítems Cliente SI
unity String Unidad de outer pack Cliente SI
size String Unidad de medida del pedido (XS, S, M, L) Cliente SI
notes String Datos adicionales, que facilitan la entrega. Puede ser vacío Cliente NO (colocar "")
documentNumber String Documento del cliente Cliente SI
name_tmp String Nombre del que recibe el pedido/Persona Natural Cliente SI
lastName String Apellido del que recibe el pedido/Persona Natural Cliente SI
companyName String En caso el envío es realizado a una empresa Cliente SI
email String Correo electrónico del cliente Cliente SI
phone String Teléfono del cliente Cliente SI
documentType String Tipo de documento del cliente DNI, RUC y CDE (Carnet de extranjería) Cliente SI
AddressClient Collection Información del cliente
name String Dirección del cliente Cliente SI
nivel_2 String Departamento de la dirección del cliente Cliente SI
nivel_3 String Provincia de la dirección del cliente Cliente SI
nivel_4 String Distrito de la dirección del cliente Cliente SI
reference String Referencia a la dirección del cliente Cliente SI
alias String Alias del punto de envío Cliente SI
Position
latitude Double Latitud, en caso de ser desconocida colocar 0 Cliente SI
longitude Double Longitud, en caso de ser desconocida colocar 0 Cliente SI
depotRequestData
nameDepot String Alias del lugar de recojo Cliente SI
contactName String Nombre del contacto Cliente SI
contactMovil String Número de teléfono de contacto Cliente SI
address
name String Dirección de recojo Cliente SI
department String Departamento de la dirección de recojo Cliente SI
province String Provincia de la dirección de recojo Cliente SI
district String Distrito de la dirección de recojo Cliente SI
reference String Referencia a la dirección de recojo Cliente SI
Position
latitude Double Latitud, en caso de ser desconocida colocar 0 Cliente SI
longitude Double Longitud, en caso de ser desconocida colocar 0 Cliente SI

Estructura de respuesta del API

Atributo Tipo Descripción Proveedor
response Integer Código de respuesta (0: no se pudo efectuar, 1: se registró correctamente)
  • 0: Error a nivel funcional, ejemplo: "Datos incorrectos en la trama"
  • 1: Éxito
  • 99: Error técnico, puede ser considerado como caída del servidor
Chazki
descriptionResponse String Descripción de la respuesta
  • 0: "FAILED"
  • 1: "SUCCESS"
  • 99: "ERROR: faltan parámetros, NullpointerException"
Chazki
codeDelivery String Código Track del delivery. Si es un conjunto de deliveries retornará separado por coma (",") Chazki

Registro de un Delivery con días de anticipación (OPCIONAL)

curl "https://sandboxintegracion.chazki.com:8443/chazkiServices/delivery/create/deliveryService"
  -H "chazki-api-key: YOUR_CHAZKI_API_KEY"

Estructura JSON de envío para el registro de un delivery:

[
    {
        "storeId": "23434j3808e4b04d9cfec50112",
        "branchId": "234kj2l3k4j34e4b04d9cfec50115",
        "deliveryTrackCode": "0000001061015",
        "proofPayment": "Boleta",
        "deliveryCost": 0,
        "mode": "Programado",
        "time": "13/11/18 9-13",
        "paymentMethod": "Pagado",
        "country": "PE",
        "listItemSold": [
            {
                "name": "Asus - Tablet Memo Pad ME70CX-1A022A 7 Android 4.3 1GB 8GB - Negro",
                "currency": "PEN",
                "price": 255,
                "weight": 0.9,
                "volumen": 0.9,
                "quantity": 1,
                "unity": "Paquete",
                "size": "S"
            }
        ],
        "notes": "El paquete lo deja en la recepción del edificio",
        "documentNumber": "12345678987",
        "name_tmp": "",
        "lastName": "",
        "companyName": "Zapateria CCE",
        "email": "cce@gmail.com",
        "phone": "989555879",
        "documentType": "RUC",
        "addressClient": [
            {
                "nivel_2": "LIMA",
                "nivel_3": "LIMA",
                "nivel_4": "SAN BORJA",
                "name": "Calle Bronzino 501",
                "reference": "Alt. Cavallini",
                "alias": "Oficina central",
                "position": {
                    "latitude": 0,
                    "longitude": 0
                }
            }
        ]
    }
]

Estructura JSON de los datos de salida de nuestro API:

{
    "response": "",
    "descriptionResponse": "",
    "codeDelivery": ""
}

Esta API nos permite poder registrar un delivery o una ruta. Es decir, dado que el envío es un arreglo, se pueden registrar varios puntos a donde se desea que llegue el Chazki por lo tanto se estaría formando una ruta, caso contrario, también se le puede registrar solo un punto de llegada.

En este caso, el formato del campo time es de la forma "dd/MM/YY NN-NN" donde NN-NN indica el rango horario de envío del delivery, y, el campo mode debe ser Programado.

HTTP Request

POST https://sandboxintegracion.chazki.com:8443/chazkiServices/delivery/create/deliveryService

Estructura de envío

Atributo Tipo Descripción Proveedor Obligatorio
storeId String Campo referido a la tienda Chazki SI
branchId String Lugar o Sucursal desde donde se origina el pedido Chazki SI
deliveryTrackCode String Código que identifica el pedido, este código debe ser único Cliente SI
proofPayment String Evidencia física que tendrá el empaque y será entregada al cliente final. BOLETA O FACTURA Cliente SI
deliveryCost Float Es 0, salvo que el cliente cobre un monto adicional por la entrega Cliente SI
mode String Puede ser "Regular", "Express" o "Programado", dependiendo del tipo de servicio deseado Cliente SI
time String Ventana horaria si el servicio es "Programado" con días de anticipación. Ejemplo: 15/12/18 13-17 Cliente SI
paymentMethod String Puede ser "Pagado" o "Efectivo" Cliente SI
country String País donde se genera el delivery (PE: Perú, MX: México, AR: Argentina) Cliente SI
listItemSold Collection Lista de ítems enviados como parte del delivery
name String Descripción del producto Cliente SI
currency String Moneda. Por defecto "PEN" Cliente SI
price Double Precio. En caso sea efectivo debe ser el precio real, o referencial en caso de ser pagado. Cliente NO (colocar 0)
weight Double Peso referencial del paquete Cliente NO (colocar 0)
volumen Double Peso referencial del paquete, dato para el cálculo de factuación Cliente NO (colocar 0)
quantity Integer Cantidad de ítems Cliente SI
unity String Unidad de outer pack Cliente SI
size String Unidad de medida del pedido (XS, S, M, L) Cliente SI
notes String Datos adicionales, que facilitan la entrega. Puede ser vacío Cliente NO (colocar "")
documentNumber String Documento del cliente Cliente SI
name_tmp String Nombre del que recibe el pedido/Persona Natural Cliente SI
lastName String Apellido del que recibe el pedido/Persona Natural Cliente SI
companyName String En caso el envío es realizado a una empresa Cliente SI
email String Correo electrónico del cliente Cliente SI
phone String Teléfono del cliente Cliente SI
documentType String Tipo de documento del cliente DNI, RUC y CDE (Carnet de extranjería) Cliente SI
AddressClient Collection Información del cliente
name String Dirección del cliente Cliente SI
nivel_2 String Departamento de la dirección del cliente Cliente SI
nivel_3 String Provincia de la dirección del cliente Cliente SI
nivel_4 String Distrito de la dirección del cliente Cliente SI
reference String Referencia a la dirección del cliente Cliente SI
alias String Alias del punto de envío Cliente SI
Position
latitude Double Latitud, en caso de ser desconocida colocar 0 Cliente SI
longitude Double Longitud, en caso de ser desconocida colocar 0 Cliente SI

Estructura de respuesta del API

Atributo Tipo Descripción Proveedor
response Integer Código de respuesta (0: no se pudo efectuar, 1: se registró correctamente)
  • 0: Error a nivel funcional, ejemplo: "Datos incorrectos en la trama"
  • 1: Éxito
  • 99: Error técnico, puede ser considerado como caída del servidor
Chazki
descriptionResponse String Descripción de la respuesta
  • 0: "FAILED"
  • 1: "SUCCESS"
  • 99: "ERROR: faltan parámetros, NullpointerException"
Chazki
codeDelivery String Código Track del delivery. Si es un conjunto de deliveries retornará separado por coma (",") Chazki

Anexos

Estados de un Pedido

Estado Descripción
NEW El pedido es recién ingresado al sistema
PRE_OFFERED Estado previo a que el pedido pase a planeamiento y sea ofertado
OFFERED El pedido es ofrecido para que un Chazki lo acepte
WAITING El Chazki va camino a recoger el pedido
ARRIVED El Chazki llega al punto de recojo del pedido
FAILED_PICK Falla durante el recojo del pedido
IN_PROGRESS El Chazki está camino a entregar el pedido
FAILED Falla ocurrida durante la entrega del pedido
COMPLETED El pedido es entregado con éxito
REPROGRAMMED El pedido es reprogramado

Tipos de Pedido

Tipo Descripción
REGULAR Pedido que puede entregarse al día siguiente de haber sido solicitado
EXPRESS Pedido que se entrega en un máximo de 3 horas el mismo día que se realiza
PROGRAMADO Pedido entregado de acuerdo a tres horarios: 9-13, 13-17, 17-21
FOOD Pedido de comida programado para ser entregado máximo en una hora
FOOD_PROGRAMADO Pedido de comida programado para ser entregado en una hora específica