droprails / index.html — v0.1 — 2026-05-09
live
00erroresstatus + code

Toda respuesta no-2xx lleva { error: { code, message } }. El status code mapea al semántico HTTP; el code es específico de droprails y machine-friendly.

01catálogo de códigos
statuscodesignificado
400request.invalidcampo requerido faltante, JSON mal formado, o valor inválido
400request.qty_unsupportedv0.1 solo soporta qty=1
400request.amount_requiredSKU de monto variable requiere amount explícito
400request.amount_invalidamount no coincide (SKU fijo) o fuera de rango
401receipt.unauthorizedla credencial no coincide con el railCredentialHash de la orden
402credencial faltante o inválida; mppx devuelve esto con header WWW-Authenticate
404catalog.not_foundSKU desconocido o item inactivo
404brand.not_foundid de marca desconocido
404item.not_foundsku de item desconocido
404receipt.not_foundno hay orden con ese id
409idempotency.conflictIdempotency-Key reutilizada con body distinto, o solicitud previa en vuelo
409credential.replayedesta credencial MPP ya fue usada (ventana de replay de 24h)
422upstream.start_failedno se pudo iniciar la orden (sin stock, validación, etc.)
422upstream.confirm_failedupstream reportó un error fatal en confirm
502upstream.partial_unrecoverablecumplimiento parcial tras reintentos; reembolso por la vía requerido
503config.no_railsninguna vía configurada en este servidor
504upstream.timeout_unrecoverablepresupuesto de polling excedido; refund_required