# Olva Courier

# 1. Generar Envío / Log. Inv. / PickUp

POST /api/shipping/create

El método permite generar un envío.

REQUEST

# provider_data
  • provider: (Tipo de dato: string). Nombre del OOLL (Olva Courier). Campo obligatorio.

  • API_KEY: (Tipo de dato: string). Api key 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.entreCalle:(Tipo de dato: string). Campo opcional.

  • 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.codigoPostal: (Tipo de dato: string). Código Postal de la ciudad de destino. Campo obligatorio.

  • remitente.nombreCompleto: (Tipo de dato: string). Campo obligatorio.

  • remitente.documentoNumero: (Tipo de dato: string). Campo obligatorio.

  • remitente.telefonos: (Tipo de dato: string). Campo obligatorio.

  • destinatario.nombreCompleto: (Tipo de dato: string). Campo obligatorio.

  • destinatario.documentoNumero: (Tipo de dato: string). Campo obligatorio.

  • destinatario.telefonos: (Tipo de dato: string). Campo obligatorio.

  • bultos.kilos: (Tipo de dato: string). Peso en kg. Campo obligatorio.

  • bultos.altoCm: (Tipo de dato: string). Altura en Cm. Campo obligatorio.

  • bultos.anchoCm: (Tipo de dato: string). Ancho en Cm. Campo obligatorio.

  • bultos.largoCm: (Tipo de dato: string). Largo en Cm. Campo obligatorio.

  • bultos.valorDeclaradoConImpuestos: (Tipo de dato: string). Largo en Cm. Campo obligatorio.

  • id_externo: (Tipo de dato: string). Número de la orden. Campo obligatorio.

  • tipoServicio: (Tipo de dato: string). Tipo de servicio de envío que se va a emplear. Campo obligatorio. Las posibilidades son:

    • REC: Servicio regular. El vehículo de Olva se acerca al Almacen del Cliente a realizar la recolección de los envíos, y la entrega se hace en domicilio del Cliente final.
    • DRP: Un SELLER que forma parte de nuestro Cliente se acerca a una Tienda de Olva a dejar el envío, y la entrega se hace en domicilio de cliente final.
    • CLK : Similar al Servicio Regular; pero la entrega final se hace en alguna de las Tiendas de Olva.
    • LIN : Logística inversa. El request va igual que al generar el envío pero solo cambia la propiedad tipoServicio.
  • type: (Tipo de dato: string). Código del Centro de Costo –

  • direccion_envio: (Tipo de dato: string). Código del almacén del vendedor. Campo obligatorio.

{
    "provider_data": {
        "provider": "Olva Courier",
        "API_KEY": "p4KeXoqoD0ojI6hgYPR32soCi57W70F0goh+XldCDLo=" 
    },
    "shippment_data": {
        "origen": {
            "postal": {
                "codigoPostal": "150103",
                "calle": "Burgos",
                "numero": "120",
                "piso": "2",
                "depto": "C",
                "localidad": "Almagro",
                "region": "Buenos Aires",
                "pais": "",
                "entreCalle": "Calle 2",
                "firstName": "Jorge",
                "lastName": "Fernández"
            }
        },
        "fecha_alta": "",
        "tipoServicio": "REC",
        "tipo_paquete": "PAQ",
        "id_externo": "613456",  
        "modalidad_envio":"",                
        "direccion_envio": "ALM1",   
        "correo": "",
        "currency": "", 
        "type": "1",
        "destino": {
            "sucursal": {
                "id": ""
            },
            "postal": {
                "codigoPostal": "040706",
                "calle": "20 de Septiembre",
                "numero": "1756",
                "piso": "2",
                "depto": "C",
                "localidad": "Villa Devoto",
                "region": "Buenos Aires",
                "pais": "",
                "entreCalle": "",
                "firstName": "Juana",
                "lastName": "González"
            }
        },
        "remitente": {
            "nombreCompleto": "prueba",
            "email": "remitente@pow.la",
            "documentoTipo": "",
            "documentoNumero": "456789123",
            "telefonos": "113332244"
        },
        "destinatario": {
            "nombreCompleto": "Prueba Pow",
            "email": "destinatario@andreani.com",
            "documentoTipo": "",
            "documentoNumero": "8456783",
            "telefonos": "1112345678"
        },
        "productoAEntregar": "",
        "bultos": {
            "cantidad": 1,
            "kilos": 2,
            "largoCm": 30,
            "altoCm": 40,
            "anchoCm": 10,
            "volumenCm": "",
            "valorDeclaradoSinImpuestos": "",
            "valorDeclaradoConImpuestos": 1000,
            "detalle": "",
            "idCliente": ""
        }
    }
}

RESPONSE

  • numeroDeEnvio: Número de envío. Se utiliza para la obtención del tracking (Estado de envío).

  • emision: Número de emision. Se utiliza para la obtención de etiqueta y el tracking (Estado de envío).

{
    "response": "Success",
    "providerStatus": "Creado",
    "numeroDeEnvio": "752648",
    "emision": "23",
    "sucursalDeDistribucion": {
        "id": null,
        "descripcion": ""
    },
    "sucursalDeRendicion": null,
    "sucursalDeImposicion": null,
    "numeroDePermisionaria": null,
    "descripcionServicio": "",
    "etiqueta": ""
}

# 2. Obtener etiqueta

GET /api/pdf/custom

Se emplea para obtener una etiqueta custom en formato pdf.

REQUEST

  • destinatario.nombre: (Tipo de dato: string). Campo obligatorio.

  • destinatario.direccion: (Tipo de dato: string). Campo obligatorio.

  • destinatario.ciudad: (Tipo de dato: string). Campo obligatorio.

  • destinatario.estado: (Tipo de dato: string). Campo obligatorio.

  • destinatario.cp:(Tipo de dato: string). Campo obligatorio.

  • destinatario.telefono:(Tipo de dato: string). Campo obligatorio.

  • destinatario.comentario:(Tipo de dato: string). Campo obligatorio.

  • remitente.nombre:(Tipo de dato: string). Campo obligatorio.

  • remitente.telefono:(Tipo de dato: string). Campo obligatorio.

  • remitente.direccion:(Tipo de dato: string). Campo obligatorio.

  • remitente.ciudad:(Tipo de dato: string). Campo obligatorio.

  • remitente.estado:(Tipo de dato: string). Campo obligatorio.

  • remitente.cp:(Tipo de dato: string). Campo obligatorio.

  • pedido.numero_envio:(Tipo de dato: string). Número de envío devuelto al generar el envío. Campo obligatorio.

  • pedido.id_externo:(Tipo de dato: string). Número de la orden. Campo obligatorio.

  • pedido.tipoServicio:(Tipo de dato: string). Tipo de envío que se generó. Campo obligatorio.

  • imagenes.logo_Cliente:(Tipo de dato: string). Logo del cliente. Campo obligatorio.

  • imagenes.logo_Operador:(Tipo de dato: string). Logo del OOLL. Campo obligatorio.

  • pdf.pdfSize:(Tipo de dato: string). Enviar siempre en "zebra". Campo obligatorio.

  • pdf.pdfSize:(Tipo de dato: string). Enviar siempre en "zebra". Campo obligatorio.

  • pdf.operador:(Tipo de dato: string). Nombre del OOLL (Olva). Campo obligatorio.

{
    "informacion": {
        "destinatario": {
            "nombre": "test hoy",
            "direccion": "camargo 900",
            "ciudad": "Ciudad Autónoma de Buenos Aires",
            "estado": "Ciudad Autónoma de Buenos Aires",
            "cp": "1414",
            "telefono": "48655512",
            "comentario": ""
        },
        "remitente": {
            "nombre": "MARCA CLIENTE SA",
            "telefono": "(011) 5910-7216",
            "direccion": "Sanchez 2023",
            "ciudad": "Caba",
            "estado": "Bs.As.",
            "cp": "1416"
        },
        "pedido": {
            "numero_envio": "752751",
            "id_externo": "61345693",
            "tipo_paquete": "",
            "tipoServicio": "REC",
            "region": "",
            "zona": ""
        },
        "imagenes": {
            "logo_Cliente": "https://i.imgur.com/2HhZFe2.png",
            "logo_Operador": "https://www.olvacourier.com/assets/sources/OLVA.jpg"
        },
        "pdf": {
            "pdfSize": "zebra",
            "operador": "olva"
        }
    }
}

RESPONSE

Devuelve el pdf de la etiqueta.

# 3. 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 (Olva Courier). Campo obligatorio.

  • apiKey: Api key para autorizar el envío de request. Campo obligatorio.

  • emision: Número de emisión obtenido al generar un envío. Campo obligatorio.

provider: Olva Courier
apiKey: p4KeXoqoD0ojI6hgYPR32soCi57W70F0goh+XldCDLo=
emision: 23

RESPONSE

  • providerStatus: Define el status del envío.

  • localizacion: Informa lugar, día y hora del último evento registrado para el envío.

{
    "response": "Success",
    "providerStatus": "ENTREGADO",
    "numeroDeEnvio": "752634",
    "localizacion": "MOLLENDO - 19/09/2023 18:00",
    "sucursalDeDistribucion": {
        "id": null,
        "descripcion": null
    },
    "sucursalDeRendicion": null,
    "sucursalDeImposicion": null,
    "numeroDePermisionaria": null,
    "descripcionServicio": ""
}