Skip to content

Errors

All error responses share this envelope:

json
{
  "status": "error",
  "error": {
    "code":    "RMT-XXXX",
    "field":   "<field-if-applicable>",
    "message": "Human-readable description"
  },
  "timestamp": "2026-08-14T14:00:00.000000"
}

The code is stable across versions and safe to switch on programmatically. The message is human-friendly and may change over time — do not switch on it. The field is present when the error is attached to a specific request field.

RMT-1xxx — validation

CodeHTTPMeaning
RMT-1005400Required field missing. field names which field.
RMT-1010400Name too short / abbreviated / contains . or *. Full legal names only.
RMT-1013400Cash pickup (operator=fbnbank) requires receiver_document_type and receiver_document_number.
RMT-1014400receiver_document_type is not one of the accepted enum values.
RMT-1015400sender_document_type is not one of the accepted enum values.
RMT-1016400reason_of_transaction is not one of the accepted enum values.
RMT-1017400source_of_funds is not one of the accepted enum values.
RMT-1018400Both receiver_current_address and receiver_permanent_address missing. At least one is required.

RMT-2xxx — auth

CodeHTTPMeaning
RMT-2001401Missing or malformed Authorization header.
RMT-2002401Invalid merchant_code or merchant_secret.
RMT-2003403Merchant account is not active. Contact support.
RMT-2004403IP not in whitelist for this merchant.

RMT-3xxx — wallet & pricing

CodeHTTPMeaning
RMT-3001402Insufficient wallet balance for the requested amount + fee.
RMT-3002409Duplicate reference — this reference was already used.
RMT-3003404No wallet for this merchant + operator + currency + direction.

RMT-4xxx — compliance

CodeHTTPMeaning
RMT-4001403Sender or receiver appears on sanctions list (blocked).
RMT-4002403Prohibited corridor combination.
RMT-4006422Receiver name mismatch — declared name does not match telco record. Response includes expected, telco and score.

RMT-5xxx — telco / downstream

CodeHTTPMeaning
RMT-5001502Telco returned an error we don't recognize.
RMT-5002400Bad format on downstream call — check `format=pdf
RMT-5003502Telco temporarily unavailable. Retry after ~30s.

RMT-9xxx — service-level

CodeHTTPMeaning
RMT-9001403Endpoint currently disabled (e.g. /outbound).
RMT-9002403Operator not enabled for your account.
RMT-9003403Sandbox amount cap (1 USD per transaction) exceeded. Go Live to lift.

Retry guidance

  • RMT-1xxx, RMT-4xxx: do not retry. Fix the payload and re-submit.
  • RMT-2xxx: fix auth first. Retrying with the same credentials fails.
  • RMT-3001, RMT-3003: do not retry. Top up your wallet from the dashboard.
  • RMT-3002 (duplicate reference): the previous call succeeded; use /transaction/status to fetch the outcome.
  • RMT-5003: retry with exponential backoff, up to 3 attempts.
  • Any other 5xx: retry once after 5 seconds, then escalate to support.

Operated by SODOTECH SARL (RCCM CD/KNG/RCCM/24-B-00910). Documentation is versioned alongside the API. Confidential — for integration partners.