Errors

Reference of Xenith status codes and status message

Pay In

Create Pay In

Error CodeDescription
"API_VALIDATION_ERROR"
400
No retry
The request failed due to invalid input parameters. Check the error response for details on which fields are invalid and correct them accordingly. Common issues include missing required fields or incorrect data formats.
"DUPLICATE_TRANSACTION_ERROR"
400
No retry
Idempotency key has been used before. Use a unique idempotency key and try again.
"CUSTOMER_BLACKLISTED"
400
No retry
Customer is blacklisted. The specified customer reference is blacklisted and cannot be used for payins.
"MINIMUM_AMOUNT_PAYIN_LIMIT"
400
No retry
The transaction amount is below the minimum allowed limit for pay-ins. Contact our support team to get information about the current minimum amount limits for each payment channel. Adjust your request based on the information provided by support.
MAXIMUM_AMOUNT_PAYIN_LIMIT
400
No retry
The transaction amount exceeds the maximum allowed limit for pay-ins. Reach out to our support team to inquire about the current maximum amount limits for each payment channel. Modify your request to be within the limits specified by the support team.
"INVALID_PAYMENT_CHANNEL"
400
No retry
The specified payment channel is not valid or not supported. Ensure you're using a correct and active payment channel code as listed in our documentation.
"MAXIMUM_DAILY_TRANSACTION_VOLUME_EXCEEDED"
400
No retry
You've reached the maximum allowed transaction volume for the day. This limit is in place for security reasons. Wait until the next day to process more transactions, or contact support if you need to increase your limit.
"MAINTENANCE_DOWNTIME"
400
No retry
The specified payment channel is temporarily unavailable due to scheduled maintenance/downtime. Please try again later once the maintenance schedule is completed
"REQUEST_TIMEOUT"
408
The request did not complete within the allowed time. The transaction may or may not have been created. To avoid duplicate charges:
1. Use the Get Payin List API to check if the payin was created.
2. If not found, you can safely retry the request.
3. When retrying, use the X-Idempotency-Key header with the same value to prevent duplicate transactions.
"KYC_REQUIRED"
422
• Currently applies to JPY - VIRTUAL ACCOUNT only.
• The submitted customerReference has no KYC submission yet. Submit the customer's KYC via Submit KYC API and wait for the status to become APPROVED before Pay In can be created.
"KYC_PENDING"
422
• Currently applies to JPY - VIRTUAL ACCOUNT only.
• The customer's customerReference has been submitted for KYC but is still being reviewed. Wait for the status to become APPROVED before Pay In could be created. Check the current status via Get KYC Status API.
"KYC_REJECTED"
422
• Currently applies to JPY - VIRTUAL ACCOUNT only.
• KYC for the submitted customerReference has been submitted before and rejected. Contact support for rejection reason, and resubmit KYC again if applicable.
"SERVER_ERROR"
500
An error occurred while connecting to our server. This could be due to temporary server issues. To ensure the transaction wasn't processed:
1. Use the Get Payin List API to check if the disbursement was created.
2. If not found, you can safely retry the request.
3. When retrying, use the X-Idempotency-Key header with the same value to prevent duplicate transactions.

Get Pay In Detail

Error CodeDescription
"API_VALIDATION_ERROR"
400
Invalid input parameters. Check the error response for details on which parameters are incorrect. Review the API documentation for proper parameter format and requirements.
"DATA_NOT_FOUND"
404
The requested payin detail does not exist or is not accessible. Verify the payin ID and ensure you have the necessary permissions to access this information.
"SERVER_ERROR"
500
An unexpected server error occurred. Wait briefly and retry. If the error persists after multiple attempts, contact support. Retrying is safe for this GET operation.

Get Pay In List

Error CodeDescription
"API_VALIDATION_ERROR"
400
Invalid input parameters. Check the error response for details on which parameters are incorrect. Review the API documentation for proper parameter format and requirements.
"SERVER_ERROR"
500
An unexpected server error occurred. Wait briefly and retry. If the error persists after multiple attempts, contact support. Retrying is safe for this GET operation.

Simulate Pay In

Error CodeDescription
"API_VALIDATION_ERROR"
400
Invalid input parameters. Check the error response for details on which parameters are incorrect. Review the API documentation for proper parameter format and requirements.
"TRANSACTION_STATUS_INVALID"
400
The provided transaction status is not valid for this operation. Verify the allowed status values in the API documentation.
"TRANSACTION_CATEGORY_INVALID"
400
The specified transaction category is invalid. Ensure you're using a supported category as listed in the API documentation.
"INVALID_TRANSACTION_ID"
400
The transaction ID provided is not valid or does not exist. Check that you're using the correct transaction ID.
"SERVER_ERROR"
500
An unexpected server error occurred. Wait briefly and retry. If the error persists after multiple attempts, contact support.

Pay Out

Create Pay Out

Error CodeDescription
"API_VALIDATION_ERROR"
400
No retry
The request failed due to invalid input parameters. Check the error response for details on which fields are invalid and correct them accordingly. Common issues include missing required fields or incorrect data formats.
"DUPLICATE_TRANSACTION_ERROR"
400
No retry
Idempotency key has been used before. Use a unique idempotency key and try again.
"INVALID_PAYOUT_CHANNEL"
400
No retry
The specified payout channel is not valid or not supported. Ensure you're using a correct and active payout channel code as listed in our documentation.
"DESTINATION_ACCOUNT_BLACKLISTED"
400
No retry
Destination account is blacklisted. The specified bank account cannot be used for payouts as it has been blacklisted.
"CUSTOMER_BLACKLISTED"
400
No retry
Customer is blacklisted. The specified customer reference is blacklisted and cannot be used for payouts.
"MINIMUM_AMOUNT_PAYOUT_LIMIT"
400
No retry
The transaction amount is below the minimum allowed limit for payouts. Contact our support team to get information about the current minimum amount limits for each payout channel. Adjust your request based on the information provided by support.
"MAXIMUM_AMOUNT_PAYOUT_LIMIT"
400
No retry
The transaction amount exceeds the maximum allowed limit for payouts. Reach out to our support team to inquire about the current maximum amount limits for each payout channel. Modify your request to be within the limits specified by the support team.
"INVALID_ACCOUNT_NAME"
400
No retry
The provided account name is invalid or does not match our records. Verify the account name and ensure it's correctly formatted and matches the account associated with the payout.
"MAXIMUM_DAILY_TRANSACTION_VOLUME_EXCEEDED"
400
No retry
You've reached the maximum allowed transaction volume for the day. This limit is in place for security reasons. Wait until the next day to process more transactions, or contact support if you need to increase your limit.
"MAINTENANCE_DOWNTIME"
400
No retry
The specified payment channel is temporarily unavailable due to scheduled maintenance/downtime. Please try again later once the maintenance schedule is completed
"INSUFFICIENT_BALANCE"
422
No retry
There are insufficient funds to complete the payout transaction. Ensure your account has adequate balance before retrying the payout.
"REQUEST_TIMEOUT"
408
The request did not complete within the allowed time. The payout may or may not have been created. To avoid duplicate disbursements:
1. Use the Get Payout List API to check if the payout was created.
2. If not found, you can safely retry the request.
3. When retrying, use the X-Idempotency-Key header with the same value to prevent duplicate transactions.
"KYC_REQUIRED"
422
The submitted customerReference has no KYC submission yet. Submit the customer's KYC via Submit KYC API and wait for the status to become APPROVED before Pay Out can be created.
"KYC_PENDING"
422
The customer's customerReference has been submitted for KYC but is still being reviewed. Wait for the status to become APPROVED before Pay Out could be created. Check the current status via Get KYC Status API.
"KYC_REJECTED"
422
KYC for the submitted customerReference has been submitted before and rejected. Contact support for rejection reason, and resubmit KYC again if applicable.
"SERVER_ERROR"
500
An error occurred while connecting to our server. This could be due to temporary server issues. To ensure the transaction wasn't processed:
1. Use the Get Payout List API to check if the payout was created.
2. If not found, you can safely retry the request.
3. When retrying, use the X-Idempotency-Key header with the same value to prevent duplicate transactions.

Get Pay Out Detail

Error CodeDescription
"API_VALIDATION_ERROR"
400
Invalid input parameters. Check the error response for details on which parameters are incorrect. Review the API documentation for proper parameter format and requirements.
"DATA_NOT_FOUND"
404
The requested payout detail does not exist or is not accessible. Verify the payout ID and ensure you have the necessary permissions to access this information.
"SERVER_ERROR"
500
An unexpected server error occurred. Wait briefly and retry. If the error persists after multiple attempts, contact support. Retrying is safe for this GET operation.

Get Pay Out List

Error CodeDescription
"API_VALIDATION_ERROR"
400
Invalid input parameters. Check the error response for details on which parameters are incorrect. Review the API documentation for proper parameter format and requirements.
"SERVER_ERROR"
500
An unexpected server error occurred. Wait briefly and retry. If the error persists after multiple attempts, contact support. Retrying is safe for this GET operation.

Get Balances

Error CodeDescription
"SERVER_ERROR"
500
An unexpected server error occurred. Wait briefly and retry. If the error persists after multiple attempts, contact support.

Account Inquiry

Sync Account Inquiry

Error CodeDescription
"API_VALIDATION_ERROR"
400
No retry
The request failed due to invalid input parameters. Check the error response for details on which fields are invalid and correct them accordingly. Common issues include missing required fields or incorrect data formats.
"INVALID_PAYOUT_CHANNEL"
400
No retry
The specified payout channel is not valid or not supported. Ensure you're using a correct and active payout channel code as listed in our documentation.
"INVALID_ACCOUNT"
400
No retry
The destination account is invalid. The response for this error will have a different format, containing the inquiryId, a status of FAILED, and a failedReason of INVALID_ACCOUNT. This is a final status.
"REQUEST_TIMEOUT"
408
The inquiry did not complete within the allowed time. The destination bank may be slow or unreachable. Safe to retry after a brief wait.
"SERVER_ERROR"
500
An unexpected server error occurred. Wait briefly and retry. If the error persists after multiple attempts, contact support.

Transaction Error Codes

Error CodeDescription
ACCOUNT_NAME_MISMATCHAccount name mismatch: expected 'expected_name', but received 'submitted_name'.
ACCOUNT_SELECTION_TIMEOUTAccount selection timed out. Please restart the transaction and try again.
ACCOUNT_STATUS_ERRORThe account status does not allow the transaction to proceed. Please check the account and try again.
BANK_MAINTENANCEBank is under maintenance. Please try again later.
INSUFFICIENT_BALANCEInsufficient account balance to complete the transaction. Please ensure sufficient funds are available and try again.
INVALID_ACCOUNTInvalid account. Please check and update the details.
INVALID_DEPOSIT_ACCOUNT_TYPEThe deposit account type is invalid. Please ensure the correct account type is used.
INVALID_AMOUNTThe payment amount does not match the requested amount.
INVALID_LOGIN_CREDENTIALSInvalid login credentials. Please check the details and try again.
INVALID_OTPInvalid OTP. Please check the OTP and try again.
INVALID_SECURITY_ANSWERInvalid security answer. Please check the answer and try again.
LOGIN_TIMEOUTLogin attempt timed out. Please restart the transaction and try again.
MERCHANT_REJECTEDTransaction was rejected by the merchant. Please review and resubmit if needed.
OTP_TIMEOUTOTP entry timed out. Please restart the transaction and try again.
PAYER_NAME_MISMATCHThe payer’s bank account name does not match the submitted account name. Please ensure the correct account holder name is used.
SERVICE_UNAVAILABLEService is currently unavailable. Please retry shortly.
USER_ABORTEDThe transaction was cancelled by the user before completion.

KYC

A rejected KYC application is not an API error — it surfaces as a REJECTED status on the KYC record. The transaction-gating codes (KYC_REQUIRED, KYC_PENDING, KYC_REJECTED) are returned by the Pay In and Pay Out APIs, not by the KYC APIs; see Create Pay In and Create Pay Out errors.

Submit KYC

Error CodeDescription
"API_VALIDATION_ERROR"
400
The request failed due to invalid input parameters, such as a missing required field or an incorrectly formatted value. The fields object in the error response lists each invalid field. Correct them and submit again.
"DUPLICATE_TRANSACTION_ERROR"
400
No retry
The X-Idempotency-Key has been used before with a different request body. Use a unique idempotency key and try again.
"REQUEST_TIMEOUT"
408
The request did not complete within the allowed time. The submission may or may not have been created. To avoid duplicate submissions:
1. Use the Get KYC Status API to check if the KYC was submitted.
2. If not found, you can safely retry the request.
3. When retrying, use the X-Idempotency-Key header with the same value.
"SERVER_ERROR"
500
An error occurred while connecting to our server. The KYC record is kept as PENDING and is never rejected automatically. Reconcile using the Get KYC Status API before submitting again.
"SERVICE_UNAVAILABLE"
503
The KYC service is temporarily unavailable. Wait briefly and retry with the same X-Idempotency-Key.

Get KYC Status

Error CodeDescription
"API_VALIDATION_ERROR"
400
No retry
Invalid input parameters. Check that customerReference is present and correctly formatted.
"DATA_NOT_FOUND"
404
No KYC record was found for the submitted customerReference. Verify the reference matches the one used when the KYC was submitted.
"SERVER_ERROR"
500
An unexpected server error occurred. Wait briefly and retry. If the error persists after multiple attempts, contact support. Retrying is safe for this GET operation.

Get All Transactions

Error CodeDescription
"API_VALIDATION_ERROR"
400
No retry
Unknown or removed query parameter, a repeated value for a normally single-valued parameter, a present-but-empty value, an invalid enum value, more than 100 values for a repeatable parameter, limit outside 1-100, createdTimeGte after createdTimeLte, both afterId and beforeId present, a malformed cursor, or a cursor issued under a different filter set. Fix the request; not retryable as-is.
"FORBIDDEN_ACCESS"
403
No retry
The credential is valid, but the API key lacks the TRANSACTION product read permission. Grant the required permission on the existing key rather than rotating it.
"SERVER_ERROR"
500
An unexpected server error occurred. Wait briefly and retry. Retrying is safe for this GET operation. If the error persists after multiple attempts, contact support.