Skip to main content

Errors

Payzor returns JSON errors with an HTTP status code:

Status codes

Policy rejections are 200s (sometimes)

One nuance worth knowing: when an agent pays a charge and its policy blocks or pauses the payment, the endpoint still answers 200 with a structured outcome rather than an error code:
Agents are programs that branch on outcomes; giving them a machine-readable reason is more useful than a bare status code.

Designing your integration around errors

  1. Branch on the three payment outcomes, not just success/failure.
  2. Parse budget errors: excede_presupuesto_restante_350 embeds the exact remaining cents.
  3. Retry on 5xx only. 4xx means your input or state is wrong; repeating won’t help.
  4. Log reference values from successful payments; they match across merchant charges and agent audit trails.