Skip to main content
All non-2xx responses include error details in this shape:
{
  "error": "Human-readable message",
  "errorCode": "MachineReadableCode"
}
Use both HTTP status and errorCode in your handling logic.

Collection Errors

StatusError CodeMeaningRecommended Action
404CurrencyExchangeValueNotFoundExchange value needed for currency conversion is unavailable.Retry later or use a supported currency/country pair.

Disbursement Errors

StatusError CodeMeaningRecommended Action
404TransferRecipientNotFoundTransfer recipient does not exist (or was removed).Re-validate and recreate recipient, then retry.
500InActiveWalletdisbursement wallet is inactive or on post-no-debit (PND).Check wallet status on dashboard before retrying.
500InsufficientBalanceWallet balance is too low for disbursement.Fund disbursement wallet and retry.
500InvalidDisbursementConfigurationDisbursement setup is incomplete or invalid.Review disbursement settings in dashboard.
400InvalidDisbursementPinDisbursement PIN missing or incorrect.Set/reset PIN and retry with valid value.
403InvalidDisbursementWhitelistedIPRequest IP is not whitelisted for disbursement.Add caller IP to allowlist or route from approved IP.
409TransferRecipientExistsRecipient already exists.Reuse existing recipient instead of creating a new one.
400TransferRecipientBlacklistedRecipient is blacklisted.Use another eligible recipient.
422ValidateAuthorizationURLErrorAuthorization URL validation failed for disbursement flow.Check authorization endpoint availability and response behavior.
400RecipientDailyLimitReachedRecipient daily limit has been exceeded.Retry later or lower amount if supported.
400DuplicateDisbursementDetectedSame amount to same recipient detected in short window.Use unique references and idempotent retry strategy.

General Errors

StatusError CodeMeaningRecommended Action
409DuplicateTransactionReferenceA request used a previously used reference value.Generate unique references per transaction.
422ValidationErrorOne or more request fields are invalid.Fix field types/values and retry.
404IntegrationNotFoundRequested provider integration is not configured/active.Activate integration in dashboard.
404ResourceNotFoundRequested resource does not exist.Verify endpoint path and identifiers.
500InvalidProviderUnsupported provider slug passed in request.Use a valid slug from Supported Providers.
500InternalServerErrorUnexpected server-side failure.Retry with backoff and contact support if persistent.

Fast Troubleshooting Flow

1

Check HTTP status and errorCode

Parse both values first to classify auth, validation, configuration, or processing issues.
2

Verify request basics

Confirm client-id, client-secret, provider slug, reference uniqueness, and integer minor-unit amount.
3

Check dashboard state

Confirm wallet status, integration status, disbursement PIN, webhook config, and whitelisted IP settings.
4

Retry safely

Use idempotent retries with exponential backoff for transient failures.

Endpoint Specification

Response format, filtering, and API conventions.

Supported Providers

Validate provider slugs and market coverage.

Testing

Reproduce and validate error scenarios in sandbox.