Guides

A clear next step.

Use error codes, field-level validation and request history to understand and recover from failed requests.

A consistent error response

HTTP 409
{
  "message": "Request ID was already used for a different payment.",
  "code": "idempotency_conflict",
  "request_id": "support-request-uuid"
}

Errors include message, code and a support request_id. Validation errors add errors, with messages grouped by field. Share the support ID with NuePay, not your secret.

Common error codes

CodeMeaning / recovery
invalid_credentialsCheck the secret, environment and whether it was regenerated.
validation_errorCorrect fields in the errors object.
invalid_amountUse a valid positive amount within limits; payout principals must be whole UGX.
idempotency_conflictRetry the original payload or start a genuinely separate payment with a new UUID.
conflicting_idempotency_keysIf both legacy and standard headers are supplied, their UUIDs must match.
insufficient_fundsThe wallet must cover the principal and fee.
payout_setup_requiredComplete verified bank payout setup before disbursing.
access_deniedCheck account eligibility, freezes and API access.
provider_unavailableLive processing is paused or unavailable. Read or retry existing accepted payments safely.
test_key_requiredUse a sandbox key for simulation.
not_foundCheck the reference, application and environment.
rate_limit_exceededWait before retrying; keep the same payment UUID.
simulation_conflictThe test payment already has a different final outcome.
internal_errorCheck the existing transaction outcome and contact support with the request ID.

Rate limits

Limits are 120 authenticated requests per key and environment per minute, 300 requests per IP per minute, and 20 failed authentications per IP per minute. HTTP 429 is a signal to back off.

Request history without secrets

API Keys includes 30 days of request history with application/environment filters. It records route templates, result codes, duration, support IDs and payment references. It excludes request bodies, headers, query strings, phone numbers, merchant references and secrets.

Made for builders. Built in Uganda.NuePay API v1

Search endpoints, guides and examples.