Antes de crear un envío en Moova, es recomendable realizar una cotización para validar que exista una tarifa disponible para el origen y destino.
Endpoints disponibles
Moova ofrece tres variantes de cotización según el tipo y calidad de los datos de dirección:
1. /v1/budgets
– Dirección como string completa
Cotiza usando direcciones en una sola cadena de texto. Menor precisión.
2. /v2/budgets
– Dirección dividida en partes
Recomendado. Cotiza usando datos separados: calle, número, ciudad, etc. Permite validaciones más precisas.
3. /budgets/estimate
– Estimación por código postal
Proporciona una cotización estimada a partir del código postal de destino.
✅ En todos los casos se deben pasar como Query Params el appId
y en los Headers el Authorization
.
Consideraciones importantes
Nosotros cotizamos los envíos en base a la geolocalización (latitud y longitud) del punto de origen y destino cuando se cuenta con la dirección completa.
En el caso del endpoint
/budgets/estimate
, al no tener una dirección completa, se utiliza el punto medio geográfico del código postal como referencia para calcular el precio estimado.El campo obligatorio para indicar el tipo de envío es
"shippingType"
con valores como"regular"
,"minutes_90"
, etc. Los tipos disponibles y sus comportamientos están detallados en la documentación de Creación de un envío.
Campos obligatorios y opcionales
Campo | Obligatorio | Descripción |
| ✔️ | Dirección de origen (completa o dividida) |
| ✔️ | Dirección de destino (completa, dividida o solo CP) |
| ✔️ | Lista de objetos con peso y dimensiones |
| ✔️ | Tipo de envío: |
| Opcional | Seguro del envío (por ahora no implementado, usar false) |
| Opcional | Envío ida y vuelta |
Ejemplos de Payload
/v1/budgets
– Envío tipo regular
{
"from":{
"address":"Av. Santa Fe 2678, 6to C, Capital Federal, Buenos Aires, 1425, AR"
},
"to":{
"address":"Córdoba 1500, 3ro B, Capital Federal, Buenos Aires, 1425, AR"
},
"shippingType":"regular",
"conf":{
"assurance":false,
"backAndForth":false
},
"items":[
{
"description":"T-Shirt",
"referenceCode":"AB-1222",
"serialNumber":null,
"weight":1500,
"length":40,
"width":30,
"height":50,
"price":2350.99,
"currency":"ARS",
"quantity":1
}
]
}
/v2/budgets
– Envío tipo minutes_90
{ "from": { "street": "Av. Santa Fe", "number": "2678", "floor": "6to", "apartment": "C", "city": "Capital Federal", "state": "Buenos Aires", "postalCode": "1425", "country": "AR" }, "to": { "street": "Cordoba", "number": "1500", "floor": "3to", "apartment": "B", "city": "Capital Federal", "state": "Buenos Aires", "postalCode": "1425", "country": "AR" }, "shippingType": "minutes_90", "conf": { "assurance": false, "backAndForth": false }, "items": [ { "description": "Taza", "weight": 1000, "length": 20, "width": 20, "height": 20, "price": 800, "currency": "ARS", "quantity": 1 } ] }
/budgets/estimate
– Estimación con código postal
{
"from":{
"street":"Av. Santa Fe",
"number":"2678",
"floor":"6to",
"apartment":"C",
"city":"Capital Federal",
"state":"Buenos Aires",
"postalCode":"1425",
"country":"AR"
},
"to":{
"street":"Cordoba",
"number":"1500",
"floor":"3to",
"apartment":"B",
"city":"Capital Federal",
"state":"Buenos Aires",
"postalCode":"1425",
"country":"AR"
},
"shippingType":"minutes_90",
"conf":{
"assurance":false,
"backAndForth":false
},
"items":[
{
"description":"Taza",
"weight":1000,
"length":20,
"width":20,
"height":20,
"price":800,
"currency":"ARS",
"quantity":1
}
]
}
Response (común a todos los endpoints)
{
"size_id":2,
"size_name":"S",
"price":200,
"billing":{
"net_price":200,
"taxes":42,
"gross_price":242
},
"price_formatted":"$ 200,00",
"currency":"ARS",
"symbol":"$",
"quote_id":626,
"kms":2.166,
"budget_id":8282,
"token":"6f5dce09fbe1c03bf50fa9bafcf89751ef4aa7bfc675e914fff4f74f1bc3b208"
}
Errores comunes
404 - Budget not found
El área de origen o destino no está dentro de la tarifa configurada.
El tamaño o peso de los items supera lo permitido.
En testing: enviar email a [email protected]
con origen, destino y tipo de envío.
En producción: contactar a tu comercial.
Próximo paso: