Skip to main content

Error Codes

Error Codes​

Every response carries an error_code. error_code == 0 means success; any other value indicates a failure. Determine success from error_code, not from the HTTP status code alone.

error_codeMeaningDescriptionSuggested handling
0Success——
90000Invalid parametersMissing required field, empty EVM payout note, sign_mode not waas, missing X-Idempotency-Key, invalid email, missing or inconsistent allowlist fields, invoice missing payer / due_date, return_url that is not an https URL with a host, or an address-book chain_type that is empty or whitespace.Fix the request parameters and retry.
90001UnauthorizedAuthentication failed or merchant identity is missing.Check your API Key and signature.
90102Merchant profile incompleteInvoice PDF needs a merchant name and login email, and one of them is missing.Finish the merchant profile in Console, then download again.
90111Invalid receiving chainreceiving_network is not supported, the receiving address is not bound to the chain, an allowlisted chain is invalid, or an address-book chain_type is not evm, solana, or tron after alias normalization (eth / ethereum, sol, trx).Correct the chain.
90112Wallet not foundAddress is not a hosted wallet on your account (receiving_address on payin, source_wallet / source_address / refund_from_address on payout and refund).Use an address from List wallets.
90120Invalid receiving tokenThe token (symbol + contract address) is not supported, an allowlisted token is invalid, or an update sent a receiving chain without the token pair.Correct the receiving token / allowlist.
90129Address book group limitThe merchant already has 20 address groups.Delete a group before creating another.
90130Address book entry limitThe group would exceed 100 addresses, or one request sent more than 500 raw entries.Split the import or remove addresses.
90131Address group not foundgroup_id does not exist on this merchant.Use an id from List groups.
90132Address entry not foundentry_id does not exist on this merchant.Read the group detail and use an entry_id from it.
90133Invalid address book addressThe address does not match the group's chain_type (evm, solana, or tron).Fix the address or use another group.
90134Duplicate address book addressUpdating one entry would collide with another address in the same group. Create and append skip duplicates instead of returning this code.Keep the existing entry or change the address.
90201Resource not foundThe payin order, Payment Link, or Invoice id is not on your account. For refunds this includes passing a refund_id where an ord_… id is required.Use an id you created.
90207Insufficient balanceHosted wallet cannot cover the refund payout plus fees.Top up the paying wallet and quote again.
90209Edit lockedA Payment Link update changed a locked amount or receiving field, or an Invoice update ran while edit_state.code is FULLY_LOCKED.Read edit_state and send only editable fields, or create a new resource.
90210Refund not allowedPayin is not success, already fully refunded, or otherwise not refundable.Pick a paid order with remaining refundable balance.
90211Invalid refund amountQuote refund_amount is malformed, exceeds order amount − successful refunds, or was omitted after a successful partial refund (omit means original order amount, not the remainder).Send a valid amount, or quote with Get Refund Info refundable_amount.
90214Invalid refund addressAn address-collected payin quote omitted refund_to_address, sent an address for the wrong chain, or sent the order's collect address.Send a destination on the refund target chain. Wallet-collected orders ignore this field.
90212Refund quote expiredPrepare used an expired quote session.Call quote again; use the new refund_id.
90213Pending refund existsThe order already has an in-flight refund, or prepare echoed a different refund_id.Wait for the pending refund to finish, or continue that refund_id.
90309Security check failedRisk-control headers on create/prepare, or transaction / merchant-stamp verification on authorize.Retry with the latest param_json; confirm the origin key.
90604Invalid merchant stampStamp failed, echoed param_json / TRX raw_txs do not match step ②, or waas_timestamp is not the value folded into merchant_sign (including outside the ±60 second window).Echo param_json byte-for-byte; on TRX payouts also echo create raw_txs. Sign the SHA-256 of param_json, a vertical bar, and waas_timestamp.
90605Origin key missingNo origin key is bound for this merchant.Bind the origin key in Console.
90606Missing merchant stampmerchant_sign is empty.Send Base64(Ed25519).
80000 – 80099System errorThe service is temporarily unavailable or hit an internal error.Retry later; if it persists, contact support with the trace.
note
  • 80000 – 80099 are transient or internal server-side errors. Clients do not need to distinguish specific values — treat them as retryable system errors.
  • msg is for troubleshooting only and is not meant to be shown to end users. When reporting an issue, include the trace value.