Saltar al contenido
Krezkadev

Errores

Formato de error y los códigos más comunes.

Todo error tiene el mismo formato. message explica qué pasó y cómo arreglarlo, y param dice qué campo lo causó.

JSON
JSON
{
  "error": {
    "type": "invalid_request_error",
    "code": "insufficient_stock",
    "message": "No hay stock suficiente en la sede: Polo básico - Negro / M (piden 3, hay 1). No se emitió nada.",
    "param": "items"
  }
}
HTTPcodeCuándo
400parameter_invalid, parameter_missing, unknown_parameter, invalid_jsonUn campo falta o está mal. Los campos desconocidos traen una pista de dónde va.
400product_has_variantsVendiste el modelo: manda el id de la talla.
400customer_requiredBoleta de más de S/ 700 sin DNI.
400batch_expired, batch_not_foundEl lote venció o no existe.
401invalid_api_keyClave inválida o anulada.
403api_not_in_planEl plan del negocio no incluye la API.
404product_not_found, resource_missingNo existe en este negocio.
409insufficient_stockNo alcanza el stock libre. No se emitió nada.
409duplicate_external_idEse pedido ya se registró; trae el id de la venta.
409duplicate_customer, duplicate_nameEl cliente, la categoría o la marca ya existe; trae su id.
409invalid_state, already_voidedLa venta no se puede anular en su estado actual, o ya está anulada.
400pdf_failedNo se pudo generar el PDF; reintenta en unos segundos.
429too_many_requestsRespeta Retry-After.

Ningún error 4xx de una venta gasta un número de boleta: todo se revisa antes de emitir.