Skip to content

Errores

Todo error es JSON con error en español, pensado para mostrar:

json
{ "error": "El operador no atiende ese destino: no está en su cobertura ni tiene tarifa configurada" }
CódigoCuándoQué hacer
400Falta un campo obligatorio, el JSON no parsea, o cancelaste un pedido que ya no está en registeredRevisa el body. No reintentes igual
401Sin X-API-Key, llave inválida, revocada o vencidaPide una llave nueva al delivery
403La llave no tiene el scope, o el plan del delivery no incluye la API, o el delivery está suspendidoEl mensaje dice cuál. Habla con el delivery
404El pedido no existe o no es de tu tiendaNo reintentes
409Conflicto de estado o duplicado; o un request con la misma Idempotency-Key todavía en procesoConsulta el estado actual antes de decidir; con idempotencia, espera unos segundos y reintenta
422El delivery no cubre ese destino o no tiene tarifa para él; o reusaste una Idempotency-Key con otro bodyOfrece otro destino o pregúntale al delivery si lo cubre; con idempotencia, usa una clave nueva
429Pasaste el límite por minutoEspera al siguiente minuto. Registra webhooks en vez de hacer polling
5xxError nuestroReintenta con espera creciente. En POST /orders, con la misma Idempotency-Key: si el primero llegó a crearse, recibes ese

Errores que son avisos

Algunas respuestas 201 traen warning además de data: el pedido se creó pero hay algo que mirar. Hoy: zona de riesgo. Muéstralo si tienes dónde; no lo trates como error.

Errores que no bloquean

  • RENIEC caído. Si mandas recipient_doc_number con dni y el servicio de verificación no responde, el pedido se crea igual sin verificar. Nunca se rechaza por eso.
  • Enlace de Maps que no resuelve. El pedido se crea sin punto GPS; el delivery lo completa desde su panel.

API pública de Motochaski · v1