API Referencia

API de consumo por medio de conexión http con respuesta de tipo json para manejo facil de información.

En el panel de ejemplo de lado derecho se muestra la configuración en los diversos lenguajes de programación en los diversos lenguajes de programación.

Image

API Endpoint Producción
https://www.envia.com/ws-enviapaqueteria
API Endpoint Pruebas
https://envia-staging.herokuapp.com/ws-enviapaqueteria

Autenticación

Antes de poder utilizar Envia API, necesitas registrarte en nuestro portal https://www.envia.com.

Con tu cuenta ya generada puedes accesar codificando tu usuario y contraseña en base64: base64_encode(usuario@correo.com:123456).

Cuenta en base64: dXN1YXJpb0Bjb3JyZW8uY29tOjEyMzQ1Ng==

Authorization
Basic dXN1YXJpb0Bjb3JyZW8uY29tOjEyMzQ1Ng==
Content-type
application/json

Ejemplos

POST Cotizar

https://www.envia.com/ws-enviapaqueteria/cotizar
Headers
Authorization
Basic b3NnZmY4QGdtYWlsLmNvbToxMjM0NTY=
Content-type
application/json
Body (raw)
{ "data": { "origen_representante": "Origen test", "origen_empresa": "Origen Empresa", "origen_email": "correo@pruebas.com", "origen_tel": "8111234567", "origen_pais": "MX", "origen_direccion": "av vasconcelos", "origen_direccion2": "1400", "origen_extra": "enfrente de office depot", "origen_cp": "66240", "destino_representante": "Destino test", "destino_empresa": "Destino empresa", "destino_email": "correo@pruebas.com", "destino_tel": "8111234567", "destino_pais": "MX", "destino_direccion": "av. vasconcelos", "destino_direccion2": "1400", "destino_extra": "enfrente de office depot", "destino_cp": "66240", "contenido": "ropa", "seguro": 0, "valor_declarado": "", "alto": 10, "ancho": 10, "largo": 10, "peso": 5, "num_guias": 1, "agendar_recoleccion": null, "hora_recoleccion": "", "hora_limite": "", "fecha_recoleccion": "", "num_paq_recoleccion": "", "peso_total_paq_recoleccion": "" } }
Propiedades
Atributo Tipo Descripción Opciones
info_paqueteria array Arreglo que contiene datos específicos de la paquetería.
paqueteria string Paquetería a asignar para generar la guía (parámetro obligatorio dentro de el array de info_paqueteria).
  • fedex
  • dhl
  • redpack
  • paquetexpress
  • sendex
  • carssa
  • noventay9Minutos
  • quiken
tipo_servicio string Tipo de servicio.

fedex

  • STANDARD_OVERNIGHT
    Express
  • PRIORITY_OVERNIGHT
    Garantizado
  • FEDEX_EXPRESS_SAVER
    Ground
  • INTERNATIONAL_PRIORITY
    Int Express
  • INTERNATIONAL_ECONOMY
    Int Economy

dhl

  • DHL_EXPRESS
    Express
  • DHL_GROUND
    Ground

redpack

  • ecoexpress
    Eco Express

paquetexpress

  • paquetexpress
    Express

sendex

  • regular
    Terrestre

carssa

  • CARSSA_GROUND_SERVICE
    Terrestre

noventay9Minutos

  • sameDay
    Mismo día
  • 99
    Menos de 99min

quiken

  • sameDay
    Mismo día
  • nextDay
    Siguiente día
tipo_vehiculo string Tipo de vehiculo a solicitar (parámetro obligatorio dentro de el array de info_paqueteria solo para 99minutos y quiken).

noventay9Minutos

  • bike
  • mini
  • bicycle

quiken

  • Motocicleta
  • Automovil
  • Trailer
origen_representante string Nombre de la persona que envía.
origen_empresa string Nombre de la empresa origen.
origen_email string Correo electrónico.
origen_tel string Teléfono.
origen_pais string País default (MX).
origen_direccion string Calle.
origen_direccion2 string Número.
origen_extra string Entre calles.
origen_cp string Código postal.
destino_representante string Nombre de la persona que recibe.
destino_empresa string Nombre de la empresa destino.
destino_email string Correo electrónico.
destino_tel string Teléfono.
destino_pais string País default (MX).
destino_direccion string Calle.
destino_direccion2 string Número.
destino_extra string Entre calles.
destino_cp string Código postal.
seguro integer Seguro del paquete.
valor_declarado string Valor declarado.
alto integer Alto.
ancho integer Ancho.
largo integer Largo.
peso integer Peso.
num_guias integer Cantidad de guias a generar.
agendar_recoleccion integer Agendar recolección.
  • null
  • 1
hora_recoleccion string Hora de recolección. 14
hora_limite string Hora limite. 17
fecha_recoleccion date Fecha. 2018-04-03
num_paq_recoleccion string Numero. 3
peso_total_paq_recoleccion string Numero. 15
tipo_impresion string tipo de formato de archivo.
  • PDF
  • PNG
  • ZPLII
  • ZPL2
tipo_papel string Tipo de papel de impresion.

pdf

  • paper_7x4.75
  • paper_8.5x11_bottom_half_label
  • paper_8.5x11_top_half_label
  • paper_letter

png

  • paper_7x4.75
  • paper_8.5x11_bottom_half_label
  • paper_8.5x11_top_half_label
  • paper_letter

zplii

  • stock_4x6

zpl2

  • paper_7x4.75
                              
curl --request POST \
  --url https://www.envia.com/ws-enviapaqueteria/cotizar \
  --header 'Authorization: Basic b3NnZmY4QGdtYWlsLmNvbToxMjM0NTY=' \
  --header 'Content-Type: application/json' \
  --data '{
   "data":
      {
         "origen_representante": "Origen test",
         "origen_empresa": "Origen Empresa",
         "origen_email": "correo@pruebas.com",
         "origen_tel": "8111234567",
         "origen_pais": "MX",
         "origen_direccion": "av vasconcelos",
         "origen_direccion2": "1400",
         "origen_extra": "enfrente de office depot",
         "origen_cp": "66240",
         "destino_representante": "Destino test",
         "destino_empresa": "Destino empresa",
         "destino_email": "correo@pruebas.com",
         "destino_tel": "8111234567",
         "destino_pais": "MX",
         "destino_direccion": "av. vasconcelos",
         "destino_direccion2": "1400",
         "destino_extra": "enfrente de office depot",
         "destino_cp": "66240",
         "contenido": "ropa",
         "seguro": 0,
         "valor_declarado": "",
         "alto": 10,
         "ancho": 10,
         "largo": 10,
         "peso": 5,
         "num_guias": 1,
         "agendar_recoleccion": null,
         "hora_recoleccion": "",
         "hora_limite": "",
         "fecha_recoleccion": "",
         "num_paq_recoleccion": "",
         "peso_total_paq_recoleccion": ""

      }
}'                            
                           
                                 
require 'uri'
require 'net/http'

url = URI("https://www.envia.com/ws-enviapaqueteria/cotizar")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic b3NnZmY4QGdtYWlsLmNvbToxMjM0NTY='
request["Content-Type"] = 'application/json'
request.body = "{\n                              \"data\":                                  {\n                                    \"origen_representante\": \"Origen test\",\n                                    \"origen_empresa\": \"Origen Empresa\",\n                                    \"origen_email\": \"correo@pruebas.com\",\n                                    \"origen_tel\": \"8111234567\",\n                                    \"origen_pais\": \"MX\",\n                                    \"origen_direccion\": \"av vasconcelos\",\n                                    \"origen_direccion2\": \"1400\",\n                                    \"origen_extra\": \"enfrente de office depot\",\n                                    \"origen_cp\": \"66240\",\n                                    \"destino_representante\": \"Destino test\",\n                                    \"destino_empresa\": \"Destino empresa\",\n                                    \"destino_email\": \"correo@pruebas.com\",\n                                    \"destino_tel\": \"8111234567\",\n                                    \"destino_pais\": \"MX\",\n                                    \"destino_direccion\": \"av. vasconcelos\",\n                                    \"destino_direccion2\": \"1400\",\n                                    \"destino_extra\": \"enfrente de office depot\",\n                                    \"destino_cp\": \"66240\",\n                                    \"contenido\": \"ropa\",\n                                    \"seguro\": 0,\n                                    \"valor_declarado\": \"\",\n                                    \"alto\": 10,\n                                    \"ancho\": 10,\n                                    \"largo\": 10,\n                                    \"peso\": 5,\n                                    \"num_guias\": 1,\n                                    \"agendar_recoleccion\": null,\n                                    \"hora_recoleccion\": \"\",\n                                    \"hora_limite\": \"\",\n                                    \"fecha_recoleccion\": \"\",\n                                    \"num_paq_recoleccion\": \"\",\n                                    \"peso_total_paq_recoleccion\": \"\"\n                                 }\n                                                         }"

response = http.request(request)
puts response.read_body
                                 
                              
                                 
import requests

url = "https://www.envia.com/ws-enviapaqueteria/cotizar"

payload = "{\n  \"data\":     {\n      \"origen_representante\": \"Oscar Gomez\",\n      \"origen_empresa\": \"osky's Factory\",\n      \"origen_email\": \"osgff8@gmail.com\",\n      \"origen_tel\": \"8111234567\",\n      \"origen_pais\": \"MX\",\n      \"origen_direccion\": \"av vasconcelos\",\n      \"origen_direccion2\": \"1400\",\n      \"origen_extra\": \"enfrente de office depot\",\n      \"origen_cp\": \"66226\",\n      \"destino_representante\": \"Marcelo Gomez\",\n      \"destino_empresa\": \"Tendencys\",\n      \"destino_email\": \"osgff8@gmail.com\",\n      \"destino_tel\": \"8111234567\",\n      \"destino_pais\": \"MX\",\n      \"destino_direccion\": \"av. vasconcelos\",\n      \"destino_direccion2\": \"1400\",\n      \"destino_extra\": \"enfrente de office depot\",\n      \"destino_cp\": \"66240\",\n      \"contenido\": \"ropa\",\n      \"seguro\": 0,\n      \"valor_declarado\": \"\",\n      \"alto\": 10,\n      \"ancho\": 10,\n      \"largo\": 10,\n      \"peso\": 5,\n      \"num_guias\": 1,\n      \"agendar_recoleccion\": null,\n      \"hora_recoleccion\": \"\",\n      \"hora_limite\": \"\",\n      \"fecha_recoleccion\": \"\",\n      \"num_paq_recoleccion\": \"\",\n      \"peso_total_paq_recoleccion\": \"\",\n      \"tipo_impresion\": \"PDF\",\n      \"tipo_papel\": \"STOCK_4X6\"\n    }\n  }"
headers = {
    'Authorization': "Basic b3NnZmY4QGdtYWlsLmNvbToxMjM0NTY=",
    'Content-Type': "application/json"
    }

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
                                 
                              
                                 
public function cotizar_guia_php(){
      $url = "https://www.envia.com/ws-enviapaqueteria/cotizar";
      $username = "pruebas@pruebas.com";
      $password = "123456";

      $data = [
         "data" =>
            array(
               "origen_representante" => "Origen test",
               "origen_empresa" => "Origen Empresa",
               "origen_email" => "correo@pruebas.com",
               "origen_tel" => "8111234567",
               "origen_pais" => "MX",
               "origen_direccion" => "av vasconcelos",
               "origen_direccion2" => "1400",
               "origen_extra" => "enfrente de office depot",
               "origen_cp" => "66240",
               "destino_representante" => "Destino test",
               "destino_empresa" => "Destino empresa",
               "destino_email" => "correo@pruebas.com",
               "destino_tel" => "8111234567",
               "destino_pais" => "MX",
               "destino_direccion" => "av. vasconcelos",
               "destino_direccion2" => "1400",
               "destino_extra" => "enfrente de office depot",
               "destino_cp" => "66240",
               "contenido" => "ropa",
               "seguro" => 0,
               "valor_declarado" => "",
               "alto" => 10,
               "ancho" => 10,
               "largo" => 10,
               "peso" => 5,
               "num_guias" => 1,
               "agendar_recoleccion" => null,
               "hora_recoleccion" => "",
               "hora_limite" => "",
               "fecha_recoleccion" => "",
               "num_paq_recoleccion" => "",
               "peso_total_paq_recoleccion" => ""
            )
      ];

      $options = array(
          'http' => array(
              'header'  => ["Content-Type: application/json","Authorization: Basic " . base64_encode("$username:$password")],
              'method'  => "POST",
              'content' => json_encode($data)
          ),
          "ssl" => array(
              "verify_peer"      => false,
              "verify_peer_name" => false,
          )
      );
      $context  = stream_context_create($options);
      $response = json_decode(file_get_contents($url, false, $context));
   }
                                 
                              
No data
var http = require("http");

var options = {
  "method": "POST",
  "hostname": [
    "www.envia.com"
  ],
  "path": [
    "ws-enviapaqueteria",
    "cotizar"
  ],
  "headers": {
    "Authorization": "Basic b3NnZmY4QGdtYWlsLmNvbToxMjM0NTY=",
    "Content-Type": "application/json"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});

req.write(JSON.stringify({ data: 
   { origen_representante: 'Oscar Gomez',
       origen_empresa: 'osky\'s Factory',
       origen_email: 'osgff8@gmail.com',
       origen_tel: '8111234567',
       origen_pais: 'MX',
       origen_direccion: 'av vasconcelos',
       origen_direccion2: '1400',
       origen_extra: 'enfrente de office depot',
       origen_cp: '66226',
       destino_representante: 'Marcelo Gomez',
       destino_empresa: 'Tendencys',
       destino_email: 'osgff8@gmail.com',
       destino_tel: '8111234567',
       destino_pais: 'MX',
       destino_direccion: 'av. vasconcelos',
       destino_direccion2: '1400',
       destino_extra: 'enfrente de office depot',
       destino_cp: '66240',
       contenido: 'ropa',
       seguro: 0,
       valor_declarado: '',
       alto: 10,
       ancho: 10,
       largo: 10,
       peso: 5,
       num_guias: 1,
       agendar_recoleccion: null,
       hora_recoleccion: '',
       hora_limite: '',
       fecha_recoleccion: '',
       num_paq_recoleccion: '',
       peso_total_paq_recoleccion: '',
       tipo_impresion: 'PDF',
       tipo_papel: 'STOCK_4X6' } }));
req.end();
package main

import (
   "fmt"
   "strings"
   "net/http"
   "io/ioutil"
)

func main() {

   url := "https://www.envia.com/ws-enviapaqueteria/cotizar"

   payload := strings.NewReader("{\n  \"data\":     {\n      \"origen_representante\": \"Oscar Gomez\",\n      \"origen_empresa\": \"osky's Factory\",\n      \"origen_email\": \"osgff8@gmail.com\",\n      \"origen_tel\": \"8111234567\",\n      \"origen_pais\": \"MX\",\n      \"origen_direccion\": \"av vasconcelos\",\n      \"origen_direccion2\": \"1400\",\n      \"origen_extra\": \"enfrente de office depot\",\n      \"origen_cp\": \"66226\",\n      \"destino_representante\": \"Marcelo Gomez\",\n      \"destino_empresa\": \"Tendencys\",\n      \"destino_email\": \"osgff8@gmail.com\",\n      \"destino_tel\": \"8111234567\",\n      \"destino_pais\": \"MX\",\n      \"destino_direccion\": \"av. vasconcelos\",\n      \"destino_direccion2\": \"1400\",\n      \"destino_extra\": \"enfrente de office depot\",\n      \"destino_cp\": \"66240\",\n      \"contenido\": \"ropa\",\n      \"seguro\": 0,\n      \"valor_declarado\": \"\",\n      \"alto\": 10,\n      \"ancho\": 10,\n      \"largo\": 10,\n      \"peso\": 5,\n      \"num_guias\": 1,\n      \"agendar_recoleccion\": null,\n      \"hora_recoleccion\": \"\",\n      \"hora_limite\": \"\",\n      \"fecha_recoleccion\": \"\",\n      \"num_paq_recoleccion\": \"\",\n      \"peso_total_paq_recoleccion\": \"\",\n      \"tipo_impresion\": \"PDF\",\n      \"tipo_papel\": \"STOCK_4X6\"\n    }\n  }")

   req, _ := http.NewRequest("POST", url, payload)

   req.Header.Add("Authorization", "Basic b3NnZmY4QGdtYWlsLmNvbToxMjM0NTY=")
   req.Header.Add("Content-Type", "application/json")

   res, _ := http.DefaultClient.Do(req)

   defer res.Body.Close()
   body, _ := ioutil.ReadAll(res.Body)

   fmt.Println(res)
   fmt.Println(string(body))

}
JSON respuesta ejemplo:
[
    {
        "status": "success",
        "data": {
            "origen_cp": "66240",
            "destino_cp": "66240",
            "fedex": {
                "fedex_ground": {
                    "service_type": "FEDEX_EXPRESS_SAVER",
                    "costo": 129,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 129
                },
                "fedex_express": {
                    "service_type": "STANDARD_OVERNIGHT",
                    "costo": 203,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 203
                },
                "fedex_garantizado": {
                    "service_type": "PRIORITY_OVERNIGHT",
                    "costo": 325,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 325
                }
            },
            "dhl": {
                "dhl_ground": {
                    "service_type": "DHL_GROUND",
                    "costo": 173,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 173
                },
                "dhl_express": {
                    "service_type": "DHL_EXPRESS",
                    "costo": 206,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 206
                }
            },
            "redpack": {
                "redpack_ecoexpress": {
                    "service_type": "ecoexpress",
                    "costo": 80,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 80
                }
            },
            "paquetexpress": {
                "paquetexpress": {
                    "service_type": "paquetexpress",
                    "costo": 113,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 113
                }
            },
            "sendex": {
                "sendex_regular": {
                    "service_type": "regular",
                    "costo": 85,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 85
                }
            },
            "noventay9Minutos": {
                "99minutos_mini_sameDay": {
                    "service_type": "sameDay",
                    "vehicle_type": "mini",
                    "costo": 189,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 189
                },
                "99minutos_bike_99": {
                    "service_type": "99",
                    "vehicle_type": "bike",
                    "costo": 128,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 128
                },
                "99minutos_bike_sameDay": {
                    "service_type": "sameDay",
                    "vehicle_type": "bike",
                    "costo": 97,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 97
                }
            },
            "quiken": {
                "quiken_Motocicleta_nextDay": {
                    "service_type": "nextDay",
                    "vehicle_type": "Motocicleta",
                    "costo": 65,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 65
                },
                "quiken_Automovil_nextDay": {
                    "service_type": "nextDay",
                    "vehicle_type": "Automovil",
                    "costo": 135,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 135
                },
                "quiken_Trailer_nextDay": {
                    "service_type": "nextDay",
                    "vehicle_type": "Trailer",
                    "costo": 180,
                    "zona_extendida": 0,
                    "seguro": 0,
                    "total": 180
                }
            }
        }
    }
]

POST Generar

https://www.envia.com/ws-enviapaqueteria/generar
Headers
Authorization
Basic b3NnZmY4QGdtYWlsLmNvbToxMjM0NTY=
Content-type
application/json
Body (raw)
{ "data": { "info_paqueteria": { "paqueteria": "fedex", "tipo_servicio": "FEDEX_EXPRESS_SAVER" }, "origen_representante": "Origen test", "origen_empresa": "Origen Empresa", "origen_email": "correo@pruebas.com", "origen_tel": "8111234567", "origen_pais": "MX", "origen_direccion": "av vasconcelos", "origen_direccion2": "1400", "origen_extra": "enfrente de office depot", "origen_cp": "66240", "destino_representante": "Destino test", "destino_empresa": "Destino empresa", "destino_email": "correo@pruebas.com", "destino_tel": "8111234567", "destino_pais": "MX", "destino_direccion": "av. vasconcelos", "destino_direccion2": "1400", "destino_extra": "enfrente de office depot", "destino_cp": "66240", "contenido": "ropa", "seguro": 0, "valor_declarado": "", "alto": 10, "ancho": 10, "largo": 10, "peso": 5, "num_guias": 1, "agendar_recoleccion": null, "hora_recoleccion": "", "hora_limite": "", "fecha_recoleccion": "", "num_paq_recoleccion": "", "peso_total_paq_recoleccion": "", "tipo_impresion": "PDF", "tipo_papel": "PAPER_7X4.75" } }
Propiedades
Atributo Tipo Descripción Opciones
info_paqueteria array Arreglo que contiene datos específicos de la paquetería.
paqueteria string Paquetería a asignar para generar la guía (parámetro obligatorio dentro de el array de info_paqueteria).
  • fedex
  • dhl
  • redpack
  • paquetexpress
  • sendex
  • carssa
  • noventay9Minutos
  • quiken
tipo_servicio string Tipo de servicio (parámetro obligatorio dentro de el array de info_paqueteria).

fedex

  • STANDARD_OVERNIGHT
    Express
  • PRIORITY_OVERNIGHT
    Garantizado
  • FEDEX_EXPRESS_SAVER
    Ground
  • INTERNATIONAL_PRIORITY
    Int Express
  • INTERNATIONAL_ECONOMY
    Int Economy

dhl

  • DHL_EXPRESS
    Express
  • DHL_GROUND
    Ground

redpack

  • ecoexpress
    Eco Express

paquetexpress

  • paquetexpress
    Express

sendex

  • regular
    Terrestre

carssa

  • CARSSA_GROUND_SERVICE
    Terrestre

noventay9Minutos

  • sameDay
    Mismo día
  • 99
    Menos de 99min

quiken

  • sameDay
    Mismo día
  • nextDay
    Siguiente día
tipo_vehiculo string Tipo de vehiculo a solicitar (parámetro obligatorio dentro de el array de info_paqueteria solo para 99minutos y quiken).

noventay9Minutos

  • bike
  • mini
  • bicycle

quiken

  • Motocicleta
  • Automovil
  • Trailer
origen_representante string Nombre de la persona que envía.
origen_empresa string Nombre de la empresa origen.
origen_email string Correo electrónico.
origen_tel string Teléfono.
origen_pais string País default (MX).
origen_direccion string Calle.
origen_direccion2 string Número.
origen_extra string Entre calles.
origen_cp string Código postal.
destino_representante string Nombre de la persona que recibe.
destino_empresa string Nombre de la empresa destino.
destino_email string Correo electrónico.
destino_tel string Teléfono.
destino_pais string País default (MX).
destino_direccion string Calle.
destino_direccion2 string Número.
destino_extra string Entre calles.
destino_cp string Código postal.
seguro integer Seguro del paquete.
valor_declarado string Valor declarado.
alto integer Alto.
ancho integer Ancho.
largo integer Largo.
peso integer Peso.
num_guias integer Cantidad de guias a generar.
agendar_recoleccion integer Agendar recolección.
  • null
  • 1
hora_recoleccion string Hora de recolección. 14
hora_limite string Hora limite. 17
fecha_recoleccion date Fecha. 2018-04-03
num_paq_recoleccion string Numero. 3
peso_total_paq_recoleccion string Numero. 15
tipo_impresion string tipo de formato de archivo.
  • PDF
  • PNG
  • ZPLII
  • ZPL2
tipo_papel string Tipo de papel de impresion.

pdf

  • paper_7x4.75
  • paper_8.5x11_bottom_half_label
  • paper_8.5x11_top_half_label
  • paper_letter

png

  • paper_7x4.75
  • paper_8.5x11_bottom_half_label
  • paper_8.5x11_top_half_label
  • paper_letter

zplii

  • stock_4x6

zpl2

  • paper_7x4.75
                              
curl --request POST \
  --url https://www.envia.com/ws-enviapaqueteria/generar \
  --header 'Authorization: Basic cHJ1ZWJhc0BwcnVlYmFzLmNvbToxMjM0NTY=' \
  --header 'Content-Type: application/json' \
  --data '{
   "data": 
      {
         "info_paqueteria": {
            "paqueteria": "fedex",
            "tipo_servicio": "FEDEX_EXPRESS_SAVER"
         },
         "origen_representante": "Origen test",
         "origen_empresa": "Origen Empresa",
         "origen_email": "correo@pruebas.com",
         "origen_tel": "8111234567",
         "origen_pais": "MX",
         "origen_direccion": "av vasconcelos",
         "origen_direccion2": "1400",
         "origen_extra": "enfrente de office depot",
         "origen_cp": "66240",
         "destino_representante": "Destino test",
         "destino_empresa": "Destino empresa",
         "destino_email": "correo@pruebas.com",
         "destino_tel": "8111234567",
         "destino_pais": "MX",
         "destino_direccion": "av. vasconcelos",
         "destino_direccion2": "1400",
         "destino_extra": "enfrente de office depot",
         "destino_cp": "66240",
         "contenido": "ropa",
         "seguro": 0,
         "valor_declarado": "",
         "alto": 10,
         "ancho": 10,
         "largo": 10,
         "peso": 5,
         "num_guias": 1,
         "agendar_recoleccion": null,
         "hora_recoleccion": "",
         "hora_limite": "",
         "fecha_recoleccion": "",
         "num_paq_recoleccion": "",
         "peso_total_paq_recoleccion": "",
         "tipo_impresion": "PDF",
         "tipo_papel": "PAPER_7X4.75"
      }
}'                            
                           
                                 
require 'uri'
require 'net/http'

url = URI("https://www.envia.com/ws-enviapaqueteria/generar")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic cHJ1ZWJhc0BwcnVlYmFzLmNvbToxMjM0NTY='
request["Content-Type"] = 'application/json'
request.body = "{\n\t\"data\": {\n\t\t\t\"info_paqueteria\": {\n\t\t\t\t\"paqueteria\": \"fedex\",\n\t\t\t\t\"tipo_servicio\": \"FEDEX_EXPRESS_SAVER\"\n\t\t\t},\n\t\t\t\"origen_representante\": \"Origen test\",\n\t\t\t\"origen_empresa\": \"Origen Empresa\",\n\t\t\t\"origen_email\": \"correo@pruebas.com\",\n\t\t\t\"origen_tel\": \"8111234567\",\n\t\t\t\"origen_pais\": \"MX\",\n\t\t\t\"origen_direccion\": \"av vasconcelos\",\n\t\t\t\"origen_direccion2\": \"1400\",\n\t\t\t\"origen_extra\": \"enfrente de office depot\",\n\t\t\t\"origen_cp\": \"66240\",\n\t\t\t\"destino_representante\": \"Destino test\",\n\t\t\t\"destino_empresa\": \"Destino empresa\",\n\t\t\t\"destino_email\": \"correo@pruebas.com\",\n\t\t\t\"destino_tel\": \"8111234567\",\n\t\t\t\"destino_pais\": \"MX\",\n\t\t\t\"destino_direccion\": \"av. vasconcelos\",\n\t\t\t\"destino_direccion2\": \"1400\",\n\t\t\t\"destino_extra\": \"enfrente de office depot\",\n\t\t\t\"destino_cp\": \"66240\",\n\t\t\t\"contenido\": \"ropa\",\n\t\t\t\"seguro\": 0,\n\t\t\t\"valor_declarado\": \"\",\n\t\t\t\"alto\": 10,\n\t\t\t\"ancho\": 10,\n\t\t\t\"largo\": 10,\n\t\t\t\"peso\": 5,\n\t\t\t\"num_guias\": 1,\n\t\t\t\"agendar_recoleccion\": null,\n\t\t\t\"hora_recoleccion\": \"\",\n\t\t\t\"hora_limite\": \"\",\n\t\t\t\"fecha_recoleccion\": \"\",\n\t\t\t\"num_paq_recoleccion\": \"\",\n\t\t\t\"peso_total_paq_recoleccion\": \"\",\n\t\t\t\"tipo_impresion\": \"PDF\",\n\t\t\t\"tipo_papel\": \"PAPER_7X4.75\"\n\t\t}\n\t}"

response = http.request(request)
puts response.read_body
                                 
                              
                                 
import requests

url = "https://www.envia.com/ws-enviapaqueteria/generar"

payload = "{\n\t\"data\": {\n\t\t\t\"info_paqueteria\": {\n\t\t\t\t\"paqueteria\": \"fedex\",\n\t\t\t\t\"tipo_servicio\": \"FEDEX_EXPRESS_SAVER\"\n\t\t\t},\n\t\t\t\"origen_representante\": \"Origen test\",\n\t\t\t\"origen_empresa\": \"Origen Empresa\",\n\t\t\t\"origen_email\": \"correo@pruebas.com\",\n\t\t\t\"origen_tel\": \"8111234567\",\n\t\t\t\"origen_pais\": \"MX\",\n\t\t\t\"origen_direccion\": \"av vasconcelos\",\n\t\t\t\"origen_direccion2\": \"1400\",\n\t\t\t\"origen_extra\": \"enfrente de office depot\",\n\t\t\t\"origen_cp\": \"66240\",\n\t\t\t\"destino_representante\": \"Destino test\",\n\t\t\t\"destino_empresa\": \"Destino empresa\",\n\t\t\t\"destino_email\": \"correo@pruebas.com\",\n\t\t\t\"destino_tel\": \"8111234567\",\n\t\t\t\"destino_pais\": \"MX\",\n\t\t\t\"destino_direccion\": \"av. vasconcelos\",\n\t\t\t\"destino_direccion2\": \"1400\",\n\t\t\t\"destino_extra\": \"enfrente de office depot\",\n\t\t\t\"destino_cp\": \"66240\",\n\t\t\t\"contenido\": \"ropa\",\n\t\t\t\"seguro\": 0,\n\t\t\t\"valor_declarado\": \"\",\n\t\t\t\"alto\": 10,\n\t\t\t\"ancho\": 10,\n\t\t\t\"largo\": 10,\n\t\t\t\"peso\": 5,\n\t\t\t\"num_guias\": 1,\n\t\t\t\"agendar_recoleccion\": null,\n\t\t\t\"hora_recoleccion\": \"\",\n\t\t\t\"hora_limite\": \"\",\n\t\t\t\"fecha_recoleccion\": \"\",\n\t\t\t\"num_paq_recoleccion\": \"\",\n\t\t\t\"peso_total_paq_recoleccion\": \"\",\n\t\t\t\"tipo_impresion\": \"PDF\",\n\t\t\t\"tipo_papel\": \"PAPER_7X4.75\"\n\t\t}\n\t}"
headers = {
    'Authorization': "Basic cHJ1ZWJhc0BwcnVlYmFzLmNvbToxMjM0NTY=",
    'Content-Type': "application/json"
    }

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
                                 
                              
                                 
public function generar_guia_php(){
      $url = "https://www.envia.com/ws-enviapaqueteria/generar";
      $username = "pruebas@pruebas.com";
      $password = "123456";

      $data = [
         "data" => 
            array(
               "info_paqueteria" => array(
                  "paqueteria" => "fedex",
                  "tipo_servicio" => "FEDEX_EXPRESS_SAVER"
               ),
               "origen_representante" => "Origen test",
               "origen_empresa" => "Origen Empresa",
               "origen_email" => "correo@pruebas.com",
               "origen_tel" => "8111234567",
               "origen_pais" => "MX",
               "origen_direccion" => "av vasconcelos",
               "origen_direccion2" => "1400",
               "origen_extra" => "enfrente de office depot",
               "origen_cp" => "66240",
               "destino_representante" => "Destino test",
               "destino_empresa" => "Destino empresa",
               "destino_email" => "correo@pruebas.com",
               "destino_tel" => "8111234567",
               "destino_pais" => "MX",
               "destino_direccion" => "av. vasconcelos",
               "destino_direccion2" => "1400",
               "destino_extra" => "enfrente de office depot",
               "destino_cp" => "66240",
               "contenido" => "ropa",
               "seguro" => 0,
               "valor_declarado" => "",
               "alto" => 10,
               "ancho" => 10,
               "largo" => 10,
               "peso" => 5,
               "num_guias" => 1,
               "agendar_recoleccion" => null,
               "hora_recoleccion" => "",
               "hora_limite" => "",
               "fecha_recoleccion" => "",
               "num_paq_recoleccion" => "",
               "peso_total_paq_recoleccion" => "",
               "tipo_impresion" => "PDF",
               "tipo_papel" => "PAPER_7X4.75"
            )
      ];

      $options = array(
          'http' => array(
              'header'  => ["Content-Type: application/json","Authorization: Basic " . base64_encode("$username:$password")],
              'method'  => "POST",
              'content' => json_encode($data)
          ),
          "ssl" => array(
              "verify_peer"      => false,
              "verify_peer_name" => false,
          )
      );
      $context  = stream_context_create($options);
      $response = json_decode(file_get_contents($url, false, $context));
   }
                                 
                              
No data
var http = require("http");

var options = {
  "method": "POST",
  "hostname": [
    "envia",
    "com"
  ],
  "path": [
    "ws-enviapaqueteria",
    "generar"
  ],
  "headers": {
    "Authorization": "Basic cHJ1ZWJhc0BwcnVlYmFzLmNvbToxMjM0NTY=",
    "Content-Type": "application/json"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});

req.write(JSON.stringify({ data: 
    { info_paqueteria: { paqueteria: 'fedex', tipo_servicio: 'FEDEX_EXPRESS_SAVER' },
       origen_representante: 'Origen test',
       origen_empresa: 'Origen Empresa',
       origen_email: 'correo@pruebas.com',
       origen_tel: '8111234567',
       origen_pais: 'MX',
       origen_direccion: 'av vasconcelos',
       origen_direccion2: '1400',
       origen_extra: 'enfrente de office depot',
       origen_cp: '66240',
       destino_representante: 'Destino test',
       destino_empresa: 'Destino empresa',
       destino_email: 'correo@pruebas.com',
       destino_tel: '8111234567',
       destino_pais: 'MX',
       destino_direccion: 'av. vasconcelos',
       destino_direccion2: '1400',
       destino_extra: 'enfrente de office depot',
       destino_cp: '66240',
       contenido: 'ropa',
       seguro: 0,
       valor_declarado: '',
       alto: 10,
       ancho: 10,
       largo: 10,
       peso: 5,
       num_guias: 1,
       agendar_recoleccion: null,
       hora_recoleccion: '',
       hora_limite: '',
       fecha_recoleccion: '',
       num_paq_recoleccion: '',
       peso_total_paq_recoleccion: '',
       tipo_impresion: 'PDF',
       tipo_papel: 'PAPER_7X4.75' }  }));
req.end();
package main

import (
   "fmt"
   "strings"
   "net/http"
   "io/ioutil"
)

func main() {

   url := "https://www.envia.com/ws-enviapaqueteria/generar"

   payload := strings.NewReader("{\n\t\"data\": {\n\t\t\t\"info_paqueteria\": {\n\t\t\t\t\"paqueteria\": \"fedex\",\n\t\t\t\t\"tipo_servicio\": \"FEDEX_EXPRESS_SAVER\"\n\t\t\t},\n\t\t\t\"origen_representante\": \"Origen test\",\n\t\t\t\"origen_empresa\": \"Origen Empresa\",\n\t\t\t\"origen_email\": \"correo@pruebas.com\",\n\t\t\t\"origen_tel\": \"8111234567\",\n\t\t\t\"origen_pais\": \"MX\",\n\t\t\t\"origen_direccion\": \"av vasconcelos\",\n\t\t\t\"origen_direccion2\": \"1400\",\n\t\t\t\"origen_extra\": \"enfrente de office depot\",\n\t\t\t\"origen_cp\": \"66240\",\n\t\t\t\"destino_representante\": \"Destino test\",\n\t\t\t\"destino_empresa\": \"Destino empresa\",\n\t\t\t\"destino_email\": \"correo@pruebas.com\",\n\t\t\t\"destino_tel\": \"8111234567\",\n\t\t\t\"destino_pais\": \"MX\",\n\t\t\t\"destino_direccion\": \"av. vasconcelos\",\n\t\t\t\"destino_direccion2\": \"1400\",\n\t\t\t\"destino_extra\": \"enfrente de office depot\",\n\t\t\t\"destino_cp\": \"66240\",\n\t\t\t\"contenido\": \"ropa\",\n\t\t\t\"seguro\": 0,\n\t\t\t\"valor_declarado\": \"\",\n\t\t\t\"alto\": 10,\n\t\t\t\"ancho\": 10,\n\t\t\t\"largo\": 10,\n\t\t\t\"peso\": 5,\n\t\t\t\"num_guias\": 1,\n\t\t\t\"agendar_recoleccion\": null,\n\t\t\t\"hora_recoleccion\": \"\",\n\t\t\t\"hora_limite\": \"\",\n\t\t\t\"fecha_recoleccion\": \"\",\n\t\t\t\"num_paq_recoleccion\": \"\",\n\t\t\t\"peso_total_paq_recoleccion\": \"\",\n\t\t\t\"tipo_impresion\": \"PDF\",\n\t\t\t\"tipo_papel\": \"PAPER_7X4.75\"\n\t\t}\n\t}")

   req, _ := http.NewRequest("POST", url, payload)

   req.Header.Add("Authorization", "Basic cHJ1ZWJhc0BwcnVlYmFzLmNvbToxMjM0NTY=")
   req.Header.Add("Content-Type", "application/json")

   res, _ := http.DefaultClient.Do(req)

   defer res.Body.Close()
   body, _ := ioutil.ReadAll(res.Body)

   fmt.Println(res)
   fmt.Println(string(body))

}
JSON respuesta ejemplo:
                                
                                   [
                                        {
                                            "status": "success",
                                            "data": {
                                                "guias": [
                                                    {
                                                        "paqueteria": "fedex",
                                                        "tipo_envio": "FEDEX_EXPRESS_SAVER",
                                                        "guia": "123456789123",
                                                        "folio": "20180403111434-1",
                                                        "guia_label": "https://www.envia.com/uploads/fedex/123456789123_fedex.pdf",
                                                        "fecha": "2018-04-03",
                                                        "saldo": "4155"
                                                    }
                                                ],
                                                "recolecciones": {
                                                    "paqueteria": "fedex",
                                                    "recoleccion": "¡La recolección fue agendada con éxito!\nNo. de confirmación: MMCA-123\nHora de recolección: 14 - 17\nFecha de recolección: 2018-04-03"
                                                }
                                            }
                                        }
                                    ]
                                
                              

Errores

Lista de errores comunes que arroja el api.

Tipo Mensaje Descripción
Error No se capturó autenticación. Es necesario mandar los datos de autenticación en el header.
Error header requerido Content-Type: application/json. Es necesario mandar content-type en el header.
Error json no cuenta con la estructura esperada. Es necesario mandar la estructura como se especifica.
Error json no cuenta con registros en la estructura. Estructura vacia.

Condiciones

Lista de condiciones con las que cuenta el api.

Tipo paqueteria Descripción
agendar_recoleccion Fedex
  • mismo dia: Solo esta disponible si se agenda la recoleccion antes de las 12pm y Solo se puede agendar recolección de 12 a 18hr con una ventana de 3hrs
  • siguiente dia: Solo esta disponible si se agenda un dia hábil siguiente y Solo se puede agendar recolección de 9 a 20hr con una ventana de 3hrs
agendar_recoleccion Dhl
  • mismo dia: Solo esta disponible si se agenda la recoleccion antes de las 12pm y Solo se puede agendar recolección de 12 a 18hr con una ventana de 3hrs
  • siguiente dia: Solo esta disponible si se agenda un dia hábil siguiente y Solo se puede agendar recolección de 9 a 20hr con una ventana de 3hrs
agendar_recoleccion Redpack
  • mismo dia: Solo esta disponible si se agenda la recoleccion antes de las 12pm y Solo se puede agendar recolección de 12 a 18hr
  • siguiente dia: Solo esta disponible si se agenda un dia hábil siguiente y Solo se puede agendar recolección de 9 a 18hr
agendar_recoleccion Paquetexpress
  • mismo dia: Solo esta disponible si se agenda la recoleccion antes de las 12pm y Solo se puede agendar recolección de 12 a 18hr
  • siguiente dia: Solo esta disponible si se agenda un dia hábil siguiente y Solo se puede agendar recolección de 9 a 18hr
agendar_recoleccion Sendex
  • mismo dia: Solo esta disponible si se agenda la recoleccion antes de las 12pm y Solo se puede agendar recolección de 12 a 18hr
  • siguiente dia: Solo esta disponible si se agenda un dia hábil siguiente y Solo se puede agendar recolección de 11 a 20hr
agendar_recoleccion Quiken
  • mismo dia: Solo esta disponible si se agenda la recoleccion hasta las 11am
  • siguiente dia: Solo esta disponible si se agenda un dia hábil siguiente

Llaves Personalizadas

Si generarn guias con llaves personalizadas la plataforma solo cobra una comisión de $5.00mxn.

Fedex
{ "info_paqueteria": { "paqueteria": "fedex", "tipo_servicio": "FEDEX_EXPRESS_SAVER", "fedex_key": "KEY", "fedex_password": "PASSWORD", "fedex_account_number": "ACCOUNT", "fedex_test_meter": "TEST_METER" } }
Dhl
{ "info_paqueteria": { "paqueteria": "dhl", "tipo_servicio": "DHL_GROUND", "dhl_user": "USER", "dhl_password": "PASSWORD", "dhl_account_number": "ACCOUNT" } }
Redpack
{ "info_paqueteria": { "paqueteria": "redpack", "tipo_servicio": "ecoexpress", "redpack_user_id": "USER_ID", "redpack_user_pin": "USER_PIN" } }
Paquetexpress
{ "info_paqueteria": { "paqueteria": "paquetexpress", "tipo_servicio": "paquetexpress", "paquetexpress_id": "ID", "paquetexpress_user": "USER", "paquetexpress_password": "PASSWORD", "paquetexpress_key": "KEY" } }
Sendex
{ "info_paqueteria": { "paqueteria": "sendex", "tipo_servicio": "regular", "sendex_user": "USER", "sendex_account": "ACCOUNT", "sendex_password": "PASSWORD" } }
99Minutos
{ "info_paqueteria": { "paqueteria": "noventay9Minutos", "tipo_vehiculo": "bike", "tipo_servicio": "99", "99min_api_key": "KEY", "99min_user_id": "USER_ID" } }