Skip to main content

API Error Codes Reference

This comprehensive guide consolidates all error codes across the Candescent API platform. Refer to this guide to troubleshoot API responses and implement robust error handling in your application.

Overview

Candescent APIs return structured error responses in the following format:

{
"code": "ERROR_CODE",
"message": "Human-readable error description"
}

Error codes follow a consistent naming convention:

  • Prefix: Indicates the API service (e.g., ACC_, TXN_, CMN_)
  • Number: Unique identifier within the service

Quick Navigation

CategoryPrefixDescription
AuthenticationCMN_OAuth token and common gateway errors
Customer ManagementISR_, UXU_, Registration codesRegistration and access, profile and status, and contact information errors
Core BankingACC_, TXN_, BAS_, BIS_Accounts, transactions, banking activities, and images errors
Business BankingBBS-, BBE-Registration, profile, and entitlements errors
Money MovementREC_, TFR_Recipients and Transfers errors
Alerts And NotificationsPRMSYS_, PRMVAL_, PRMAPS_System alerts, institution alerts, templates, institution and user preferences, notification channels, and history and events errors (Notification channels often use HTTP status only)
Documents And PreferencesDSC_, UXESTMT_Institution disclosures, user disclosures, and electronic statements errors
Customer Campaigns1000, 2000, HTTP statusExperience groups, jobs, promotion suite, and audience errors
MXUsers, data, and widgets errors; see MX API reference

Authentication Errors

Authentication APIs return common errors used across all Candescent services.

OAuth V1 and V2 (CMN_) Errors

CodeMessageHTTP Status
CMN_90000Internal server error500
CMN_90001Internal server error - Cross Talk500
CMN_90002Quota limit violation500
CMN_90003Spike limit violation500
CMN_90004Invalid client credentials401
CMN_90005Header institutionId is invalid or Form param institution_user_id is invalid400
CMN_90006Not authorized to access this resource400
CMN_90007Invalid grant type400
CMN_90008Header transactionId is invalid400
CMN_90009Access blocked400
CMN_90010Header is invalid400
CMN_90011Request is invalid400
CMN_90012Request is invalid - Scopes400
CMN_90013Username is invalid400
CMN_90014Password is invalid400
CMN_90015Invalid user credentials401
CMN_90016Invalid user400
CMN_90017Request contains non printable ASCII characters400
CMN_90018Invalid token401
CMN_90019Error creating token500
CMN_90020App cannot authorize itself400
CMN_90021Invalid client configuration400

Customer Management Errors

Customer Management APIs return errors related to registration and access, profile and status, and contact information errors.

Registration and Access Errors

Registration Errors:

CodeMessageHTTP Status
20006Invalid input (member number, channel TPV_API, name length, SSN, etc.)400
26201LoginID is already taken400
26214Too many destinations passed400
26330Registration already in progress (duplicate request)409
26331User is already registered409
26340Could not create record in database400
220001SSN is not 9 digits400
220002First name exceeds 39 characters400
220003Last name exceeds 39 characters400
220005Middle name exceeds 39 characters400
220006Email exceeds 64 characters400
220007Postal code not found400
220008City not found400
220009State not found or invalid length (US: 2 chars)400
220010Street/Address1 missing or exceeds 128 characters400
220011Country not found400
220012Mother's maiden name missing or exceeds 128 characters400
220013Invalid date of birth format400
220014Phone number is missing400
220015Invalid LoginID (6–256 chars, allowed @$*_-=.!~, no spaces)400
220016LoginID cannot match member number400
220018Invalid password400
220019Login must be within preconfigured range400

Reset Password and Unlock User (UXU_) Errors:

CodeMessageHTTP Status
UXU_10001Invalid JWT token400
UXU_10002Required role not present in JWT token403
UXU_10003JWT token has expired400
UXU_10004JWT token does not contain institution id400
UXU_10005Required Authorization header is missing400
UXU_10006Required Correlation Id header is missing400
UXU_10007Correlation Id is not a GUID400
UXU_10008Invalid IP address in the header400
UXU_10009Invalid Authorization in the header400
UXU_10010JWT token does not contain institution customers id400
UXU_10011JWT token institution customers id not matching path param400
UXU_10012Invalid path param400
UXU_10013Invalid path400
UXU_10014Invalid query param400
UXU_13001Combined firstname, middleName, lastname exceeds 39 chars400
UXU_13002Invalid user password400
UXU_13003Login Id is already taken400
UXU_13004You are already a registered user400
UXU_13005Invalid Date Format400
UXU_13006Soft failure, contact institution400
UXU_13007Login id and Member number can't be the same400
UXU_13008Member number/username is already registered409
UXU_13009Error while registering user400
UXU_30001Error interacting with the service503
UXU_30002Error interacting with the external service503
UXU_88888No entitled customers found404
UXU_88889Contact method Id not found400
UXU_88890Institution customer id not found400
UXU_88891Host phone postal address not found400
UXU_99998Internal server error500
UXU_99999Cannot handle this request — check URL, body and parameters400

Profile and Status Errors

FI Customer Errors:

CodeMessageHTTP Status
USER_ERRORBad Request - Invalid fiCustomerIdType400
APP_ERRORUnauthorized Access401
APP_ERRORFICustomer does not exist404
SYSTEM_ERRORInternal server error500
SYSTEM_ERRORCircuit breaker open or throttle limit reached503

Institution User and User Status (ISR_) Errors:

CodeMessageHTTP Status
ISR_10001InstitutionUser not found400
ISR_10002Primary InstitutionUser not found400
ISR_10009Error processing OData expression400
ISR_10010The CIF number is required, but was not found500
ISR_10032Invalid request500
ISR_11007Invalid path param400
ISR_11008Invalid query param400
ISR_23004Error interacting with host500
ISR_88888Internal validation error500
ISR_99999Internal server error500

Customer Profile (UXU_) Errors:

CodeMessageHTTP Status
UXU_10001Invalid JWT token400
UXU_10002Required role not present in JWT token403
UXU_10003JWT token has expired400
UXU_10004JWT token does not contain institution id400
UXU_10005Required Authorization header is missing400
UXU_10006Required Correlation Id header is missing400
UXU_10007Correlation Id is not a GUID400
UXU_10008Invalid IP address in the header400
UXU_10009Invalid Authorization in the header400
UXU_10010JWT token does not contain institution customers id400
UXU_10011JWT token institution customers id not matching path param400
UXU_10012Invalid path param400
UXU_10013Invalid path400
UXU_10014Invalid query param400
UXU_30001Error interacting with the service503
UXU_30002Error interacting with the external service503
UXU_88888No entitled customers found404
UXU_88890Institution customer id not found400
UXU_99998Internal server error500
UXU_99999Cannot handle this request — check URL, body and parameters400

Contact Information (UXU_) Errors

CodeMessageHTTP Status
UXU_10001Invalid JWT token400
UXU_10002Required role not present in JWT token403
UXU_10003JWT token has expired400
UXU_10004JWT token does not contain institution id400
UXU_10005Required Authorization header is missing400
UXU_10006Required Correlation Id header is missing400
UXU_10007Correlation Id is not a GUID400
UXU_10008Invalid IP address in the header400
UXU_10009Invalid Authorization in the header400
UXU_10010JWT token does not contain institution customers id400
UXU_10011JWT token institution customers id not matching path param400
UXU_10012Invalid path param400
UXU_10013Invalid path400
UXU_10014Invalid query param400
UXU_30001Error interacting with the service503
UXU_30002Error interacting with the external service503
UXU_88888No entitled customers found404
UXU_88889Contact method Id not found400
UXU_88890Institution customer id not found400
UXU_88891Host phone postal address not found400
UXU_99998Internal server error500
UXU_99999Cannot handle this request — check URL, body and parameters400

Core Banking Errors

Core Banking APIs return errors related to accounts, transactions, banking activities, and banking images.

Accounts

List Accounts and Get Account by ID (ACC_) Errors

CodeMessageHTTP Status
ACC_00002Given password is invalid401
ACC_00003The account is invalid for summary display500
ACC_00004The account is hidden500
ACC_00005Error processing filter expression400
ACC_00006'From' Account restricted for transfer500
ACC_00007'To' Account restricted for transfer500
ACC_00008Invalid 'From' account status for transfer500
ACC_00009Invalid 'To' account status for transfer500
ACC_00010'From' Account has zero or negative balance500
ACC_00011Validation Error400
ACC_00012Data not found404
ACC_00014The CIF number is required, but was not found500
ACC_00015InstitutionId provided is invalid or blank400
ACC_00016InstitutionUserType provided is invalid or blank400
ACC_00017InstitutionCustomerId provided is invalid or blank400
ACC_00018InstitutionId from Query param and JWT do not match400
ACC_00019InstitutionUserType from Query param and JWT do not match400
ACC_00020InstitutionCustomerId from Query param and JWT do not match400
ACC_00021UserId provided is invalid or blank400
ACC_00022UserId from Query param and JWT do not match400
ACC_00023InstitutionUserId provided is invalid or blank400
ACC_00024InstitutionUserId from Query param and JWT do not match400
ACC_00025InstitutionUserRole provided is invalid or blank400
ACC_00026InstitutionUserRole from Query param and JWT do not match400
ACC_00101User not found404
ACC_00113Update nickname feature is not enabled403
ACC_00114Nickname field should not be empty400
ACC_00115Nick name update is disabled for Joint Accounts403
ACC_00116NickName length in request is greater than configured maximum length or Database column length400
ACC_00117Host update is done but exception occurred while updating the database500
ACC_00118Host update is done but exception occurred while inserting record to database500
ACC_00119Hide/show account feature is not enabled403
ACC_00201Account type ATYP not present in the account data500
ACC_00202Format error in generating formatted account id with mask configuration500
ACC_00203No USR value present in the Host Data500
ACC_00204ACHTYP is configuared as BLANK in FI config file500
ACC_00205ANUM information not provided by FI HOST500
ACC_00206No formatted account was produced by configuration500
ACC_00207Requested account type not found in FI configuration validAccountTypes500
ACC_00208MICR value not provided by FI host500
ACC_00209CIID Format configuration error500
ACC_00210EnableFormatter is not true for ACHTYPE CIID for FI500
ACC_00211Valid account types not set for Institution500
ACC_00300Utility DB is not available500
ACC_00408BB User is missing User Id in the request400
ACC_00410A location is required for BB users400
ACC_00500Requested service or feature is switched off500
ACC_00501Couchbase System is unavailable500
ACC_00600ServiceType parameter is invalid. Valid values are IB/BB400
ACC_00601Invalid JWT token401
ACC_00602Unauthorized access401 or 403
ACC_00702Subuser Id is empty400
ACC_00704InstitutionId is invalid or its incorrectly configured500
ACC_00705Member number is not valid.500
ACC_88888Internal validation error.500
ACC_99988Server can only handle JSON request. Other media types are not supported415
ACC_99989RequestBody size exceeds limit.400
ACC_99990Client error400
ACC_99991Request callingAppId header is too long400
ACC_99992One or more request query params are invalid or not provided.400
ACC_99993Server cannot handle this request500
ACC_99994Invalid query param400
ACC_99995Request should only contain printable ASCII characters400
ACC_99996Request header is too long500
ACC_99997Request transactionId header is too long400
ACC_99998Request is missing a transactionId header400
ACC_99999Error in Accounts Service500

List Accounts (Legacy) Errors

CodeTypeMessageHTTP Status
10001SYSTEM_ERRORInternal System Error.500
10002SYSTEM_ERRORConnection Error.500
10003SYSTEM_ERRORConfiguration Error.500
10006SYSTEM_ERROROutput validation error occurred500
20009APP_ERRORPrincipalEndUser:Data not found.404
25002USER_ERRORUser Id or password is invalid500
25099USER_ERRORRequired HTTP Headers were not found400
25134SYSTEM_ERRORAlt_mem_number required but not found in database500
25401APP_ERRORAccount type ATYP not present in the account data.500
25502APP_ERRORAccount formatter error500
25503APP_ERRORNo USR value present in the Host Data500
25504APP_ERRORACHTYP is configuared as BLANK in FI config file500
25505APP_ERRORANUM information not provided by FI host500
25506APP_ERRORNo formatted account was produced by configuration500
25507APP_ERRORRequested account type not found in FI configuration validAccountTypes500
25518APP_ERRORMICR value not provided by FI host500
25519APP_ERRORCIID Format configuration error500
25520APP_ERROREnableFormatter is not true for ACHTYPE CIID in Fi config500
25555APP_ERRORRequested service or feature is switched off500
25612APP_ERRORResponse from entitlements service is not successful500
25615SYSTEM_ERROREntitlement Service is temporarily unavailable500
25618USER_ERRORSubuser auth ID is empty500
25619APP_ERRORMismatch of the data between the requested resource and response returning500
25665APP_ERRORExtern format is not enabled/Invalid extern format500
25673APP_ERRORHTTP Response from BB Entitlements Service is not successful500
25674SYSTEM_ERRORBB Entitlement Service is temporarily unavailable500
25679APP_ERRORThe user is not entitled for view account(s)500
25690USER_ERRORBB User is missing Auth ID Request Header500
25693APP_ERRORInvalid User Type Header for Business Banking User500
25694APP_ERRORInvalid User Type Header for IB User500
25722SYSTEM_ERRORHTTP Response from Business Customer Service is not successful500
25723SYSTEM_ERRORBusiness Customer Service is temporarily unavailable500
25736 / 25737USER_ERRORInvalid member number500
28001SYSTEM_ERRORCircuit Breaker HardTrip configuration set to true in FI config file503
28002SYSTEM_ERRORCircuit Breaker Status is Open503
28003SYSTEM_ERRORIncoming requests count exceeded configured Semaphore count503
50000SYSTEM_ERRORInternal error in downstream500
Host Code-Host Message500

Retrieve Customer Accounts with Transactions (UXU_) Errors

CodeMessageHTTP Status
UXU_10002Required role not present in JWT token403
UXU_10003JWT token has expired400
UXU_10004JWT token is invalid, does not contain institution id400
UXU_10005Required Authorization header is missing400
UXU_10006Required Correlation Id header is missing400
UXU_10007Correlation Id is not a GUID400
UXU_10008Invalid IP address in the header400
UXU_10009Invalid Authorization in the header400
UXU_10010JWT token is invalid, does not contain institution customers id400
UXU_10011JWT token institution customers id is not matching customer id path param400
UXU_30001Error interacting with the service500 or 503
UXU_30002Error interacting with the external service500 or 503
UXU_88888No entitled customers found404

Transactions (TXN_) Errors

CodeMessageHTTP Status
TXN_10001The date(s) provided could not be parsed, or represented an invalid range.400
TXN_10002Request is missing a transactionId header400
TXN_10003Request should only contain printable ASCII characters400
TXN_10004Request transactionId header is too long400
TXN_10005Invalid query param400
TXN_10006A valid institution customer id is required for business users.400
TXN_10007A valid account id is required.400
TXN_10008Request header is too long500
TXN_10009Request callingAppId header is too long400
TXN_10010One or more query params are invalid or blank400
TXN_10011The authorization for this request does not allow for one or more attributes to be passed as parameters400
TXN_11001Full authentication was not provided in the request.401
TXN_11002The authentication token that was sent in the request is invalid.401
TXN_11003The authentication provided does not authorize this request.403
TXN_11004Unauthorized access403
TXN_20001Transaction history is not enabled for this account.400
TXN_20002This user is not entitled to see transaction history for this account.400
TXN_20003Transactions for this account are available on an external site.400
TXN_20004The CIF number is required, but was not found400
TXN_20005Error processing filter expression400
TXN_20006Error processing pagination expression400
TXN_88888Internal validation error.500
TXN_90000Server cannot handle this request400, 404, or 500
TXN_99988Server can only handle JSON request. Other media types are not supported415
TXN_99990Client error400
TXN_99999Server error.500

Banking Activities (BAS_) Errors

CodeMessageHTTP Status Code
BAS_10001The given start date must be earlier than end Date.400
BAS_10002The given start date must be within last three months.400
BAS_10003BigTable connection failed.500
BAS_10004BigTable rows could not be read.500
BAS_10005Invalid arguments passed in the request; Failed to read HTTP message400
BAS_10006Http Message not readable400
BAS_10007NOT EQUAL and LIKE criterias not supported at this time.400
BAS_10008Additional filters condition and sub filter condition cannot be the same.400
BAS_10009Invalid UserType requested.400
BAS_10010Invalid UserIdType requested.400
BAS_10011UserIdType must be present if userId is given.400
BAS_10012Invalid EventType requested.400
BAS_10021BigTable Query is invalid.400
BAS_10022Row key is unexpectedly empty.400
BAS_10101Full authentication was not provided in the request.401 or 403
BAS_10102Authentication token sent in the request is invalid.401
BAS_10103The authentication provided does not authorize this request.400
BAS_10104The jwt token is invalid.401
BAS_10105Unauthorized access.400
BAS_10201Request should only contain printable ASCII characters400
BAS_10202transactionId header is too long400
BAS_10203One or more header values are invalid400
BAS_10204Invalid Request body400
BAS_10205One or more header values are too long400
BAS_10206nextPageToken is invalid400
BAS_10207Requested method type is invalid400
BAS_99999Internal server error500

Images (BIS_) Errors

CodeMessageHTTP Status
BIS_00001Could not retrieve check image. Date out of range or expired.400
BIS_00002Could not retrieve requested image(s). Date out of range or expired.400
BIS_00003The date provided could not be parsed or represented an invalid date.400
BIS_00004Image type cannot be null or empty.400
BIS_00005Image type is not supported.400
BIS_00006Account type is not supported for check image.400
BIS_00007Account types configured for requested image(s) at FI level are invalid.400
BIS_00008Transaction types configured for requested image(s) at FI level are invalid.400
BIS_00009Transaction image number is invalid or contains non-numeric characters.400
BIS_00010Transaction date cannot be null for requested image(s).400
BIS_00011Account id cannot be null or empty.400
BIS_00012Card Number cannot be null or empty.400
BIS_00012Image identifier cannot be null for requested image(s).400
BIS_00013Request is missing a transactionId header400
BIS_00014Request should only contain printable ASCII characters.400
BIS_00015One of the query parameter length is greater than max length.400
BIS_00016Request transactionId header is too long.400
BIS_00017Invalid query param.400
BIS_00018Start date or end date cannot be null for statement images.400
BIS_00019The start date cannot be after the end date.400
BIS_00020A location is required for BB users.400
BIS_00021BB user is missing user id in the request.400
BIS_00022The date cannot be null or empty.400
BIS_00023Request header is too long.400
BIS_00024Request callingAppId header is too long.400
BIS_00025One or more query params are invalid or blank400
BIS_00026The authorization for this request does not allow for one or more attributes to be passed as parameters400
BIS_10000Client error. Banking images request could not be completed.400
BIS_10001Full authentication was not provided in the request.401
BIS_10002The authentication token that was sent in the request is invalid.401
BIS_10003The authentication provided does not authorize this request.403
BIS_10004InstitutionCustomers not available in JWT.403
BIS_10005Unauthorized access.401 or 403
BIS_20001Check image retrieval was not successful.500
BIS_20002No statements available for users200 (warning)
BIS_20007Error interacting with FICDS Statement Image service.200 (warning)
BIS_20008No transaction found for the requested image.404
BIS_20009Account in the request not available404
BIS_20022User not found.404
BIS_20023HTTP Response from BB Service is not successful500
BIS_30000Check image feature is not enabled for this FI.400
BIS_30001Image retrieval is turned off for this account.400
BIS_30002Image(s) retrieval is turned off for this FI.400
BIS_30004Data not found.404
BIS_30005User is not entitled to view online statements.400 or 401
BIS_30006Entitlements or account response is blank.400
BIS_88888Internal validation error.500
BIS_90000Server cannot handle this request.500
BIS_99988Server can only handle JSON request. Other media types are not supported415
BIS_99999Server error. Banking images request could not be completed.500

Business Banking Errors

Business Banking APIs returns errors related to registration, profile, and entitlements.

Registration (BBS_) Errors

CodeMessageHTTP Status
BBS-40095Invalid tinNumber400
BBS-40095Invalid confirmationNumber400
BBS-40095Invalid institutionId400
BBS-40150Invalid JWT401
BBS-40151Invalid roles or entitlements403
BBS-40153Unexpected server error500
BBS-40154Business registration not found404

Profile (BBS_) Errors

CodeMessageHTTP Status
BBS-40095Invalid tinNumber400
BBS-40095Invalid searchType400
BBS-40095Invalid institutionId400
BBS-40147Business details not found400
BBS-40150Invalid JWT401
BBS-40151Invalid roles or entitlements403
BBS-40153Unexpected server error500

Entitlements (BBE_) Errors

CodeMessageHTTP Status
BBE-41107Error in retrieving institution user500
BBE-41108Invalid JWT401
BBE-41109Invalid roles or entitlements403
BBE-41110Required request parameter 'businessId' not present400
BBE-41111Unexpected server error500

Money Movement Errors

Money Movement APIs return errors related to recipients and transfers.

Recipients (REC_) Errors

CodeMessageHTTP Status
REC_10005User not found at host400
REC_10006Invalid passcode400
REC_10007Invalid account400
REC_10008Test lucky transfer failed500
REC_10009Invalid query param400
REC_11001Full authentication was not provided in the request401
REC_11002The authentication token is invalid401
REC_11003The authentication does not authorize this request403
REC_11004InstitutionId is invalid or incorrectly configured400
REC_12001Request should only contain printable ASCII characters400
REC_12002Request is missing a transactionId header400
REC_12003Request transactionId header is too long400
REC_12004Required fields are not provided or not valid400
REC_12005Request cannot be blank400
REC_12006Recipient id cannot be blank400
REC_12007Provider type cannot be blank400
REC_12008Invalid provider type400
REC_12009Invalid email400
REC_12010Recipient ids from request and URL do not match400
REC_12011Request field length exceeds max length400
REC_12012Account type is not from the list of allowed types400
REC_12013Sender account id cannot be blank400
REC_12014Request header is too long400
REC_12015Some fields in the request body are not supported for the configured provider type400
REC_13001This recipient already exists400
REC_13002This recipient nickname already exists400
REC_14001Recipient not added to the database successfully500
REC_14002Recipient not deleted successfully500
REC_14003Error while fetching recipients from database500
REC_14004Recipient not found400
REC_14005Error while updating recipient information400, 401, or 500
REC_22001Internal validation error500
REC_99997Client error400
REC_99998Server cannot handle this request400, 404, or 405
REC_99999Server error500

Transfers (TFR_) Errors

CodeMessageHTTP Status
TFR_10000Client error. Transfer could not be completed400
TFR_10001Server error. Transfer could not be completed500
TFR_10002Invalid institution id400
TFR_10003The From account does not exist or could not be retrieved400
TFR_10004The To account does not exist or could not be retrieved400
TFR_10005An unacceptable transfer type was provided for this transfer400
TFR_10006Contributions to a prior year cannot be scheduled400
TFR_10007A start date must be provided, and must be after today400
TFR_10008An end date after the start date must be provided and must yield at least one execution400
TFR_10009The number of executions is required for the given life type (positive integer ≤ 99)400
TFR_10010The provided frequency requires a valid day or set of days to execute on400
TFR_10011The provided schedule requires a life type400
TFR_10012The provided schedule requires a valid frequency400
TFR_10013Loan overpayment cannot be scheduled400
TFR_10014SRTs are not enabled for this institution400
TFR_10015Loan overpayment is not enabled for this institution400
TFR_10016Loan overpayment options are not configured for this institution400
TFR_10017Loan overpayment options for this institution could not be processed400
TFR_10018Loan overpayment is not allowed for the To account400
TFR_10019Loan overpayment option is not allowed for the To account400
TFR_10020The transfer amount is required400
TFR_10021The transfer amount is invalid400
TFR_10022The transfer amount exceeds the From account balance400
TFR_10023The From User is required400
TFR_10024The To User is required400
TFR_10025The From account is restricted from making a transfer400
TFR_10026The To account is restricted from receiving a transfer400
TFR_10027The From account has an invalid status and cannot be used to make a transfer400
TFR_10028The To account has an invalid status and cannot be used to receive a transfer400
TFR_10029The From account and To account cannot be the same400
TFR_10030The RegE confirmation message could not be created400
TFR_10031The transfer amount must equal the To account loan payment amount400
TFR_10032The transfer amount must be less than or equal to the To account loan payment amount400
TFR_10033The transfer amount must be greater than or equal to the To account loan payment amount400
TFR_10034Invalid query param400
TFR_10035Request should only contain printable ASCII characters400
TFR_10036Request is missing a transactionId header400
TFR_10037Request transactionId header is too long400
TFR_10038The To account prior year eligible contribution amount is missing, zero, or negative400
TFR_10039The transfer amount exceeds the prior year eligible contribution amount400
TFR_10040The To account eligible contribution amount is missing, zero, or negative400
TFR_10041The transfer amount exceeds the eligible contribution amount400
TFR_10042Memo is not enabled for this institution400
TFR_10043Memo exceeds maximum length allowed400
TFR_10044Memo contains an invalid character400
TFR_10045Transfers From the institution owned account transfer type is not enabled400
TFR_10046Transfers To the institution owned account transfer type is not enabled400
TFR_10047The institution owned account is not properly configured for this institution400
TFR_10048The cross TIN transfer type was set incorrectly400
TFR_10050Recipient transfers not allowed400
TFR_10051Recipient not found400
TFR_10052Recipient transfers to the requested account type not allowed400
TFR_10053Invalid to account type in validate recipient transfer request400
TFR_10054Invalid to passcode in validate recipient transfer request400
TFR_10056The request body could not be parsed; ensure required fields and valid values400
TFR_10057Business banking user not found400
TFR_10058The fromAccountId field is required400
TFR_10059The toAccountId field is required400
TFR_10060The CIF number is required, but was not found401
TFR_10061Request callingAppId header is too long400
TFR_10062The provided schedule is invalid for the life type and frequency400
TFR_10063An incorrect number of days was provided for the given frequency400
TFR_10064Test transfers cannot be scheduled400
TFR_10065Request header is too long400
TFR_10066Transfer id is required400
TFR_10067Transfer ids from request and URL do not match400
TFR_10068Unauthorized access403
TFR_11001Full authentication was not provided in the request401
TFR_11002The authentication token is invalid401
TFR_11003The authentication does not authorize this request403

Alerts And Notifications Errors

Alerts and Notifications APIs return errors related to system alerts, institution alerts, templates, institution and user preferences, notification channels, and history and events

System Alert, Institution Alert, Templates Errors

System (PRMSYS_) Errors:

CodeMessageHTTP Status
PRMSYS_10001Cross talk / concurrency error occurred400
PRMSYS_10002Malformed input data400
PRMSYS_10003Unknown application error occurred400
PRMSYS_10004Error occurred while validating JWT token400
PRMSYS_10005Resource of name already exists204
PRMSYS_10006Requested resource of identifier doesn't exist400
PRMSYS_10007Resource of identifier already exists400
PRMSYS_10008Requested resource of name doesn't exist400
PRMSYS_10015Required attribute missing400
PRMSYS_10016Non Printable ASCII character detected400

Validation (PRMVAL_) Errors:

CodeMessageHTTP Status
PRMVAL_10001Path parameter doesn't match request body value400
PRMVAL_10002Invalid value for field400
PRMVAL_10003Invalid institution400
PRMVAL_10005Invalid channel type400
PRMVAL_10006Invalid alert type400
PRMVAL_10007Field is required400
PRMVAL_10008Field is invalid400

Institution and User Preferences Errors

Alert preferences (PRMAPS_) Errors:

CodeMessageHTTP Status
PRMAPS_10007Invalid alert preference ID404
PRMAPS_10008Alert preference mismatch400

Validation (PRMVAL_) Errors:

CodeMessageHTTP Status
PRMVAL_10004Invalid user400
PRMVAL_10006Invalid alert type400
PRMVAL_10009Requested alert type was not found for the FI400
PRMVAL_10010Preference not found for enrollmentId400
PRMVAL_10011Preference not found for institution400
PRMVAL_10012Value should not be null400
PRMVAL_10013Invalid alert preference400
PRMVAL_10015Alert type not configured for channel or disabled for Institution400
PRMVAL_10016Unsupported account type400

Notification Channels Errors

HTTP StatusMessage
400Missing Required HTTP Headers or Invalid/Missing Inputs
401Authorization invalid or Missing Authorization Header
404Entities not Found (User or Account not found)
500Internal Server Error

History and Events Errors

Alert History (PRMSYS_) Errors:

CodeMessageHTTP Status
PRMSYS_10003Unknown application error occurred400
PRMSYS_10004Error occurred while validating JWT token400
PRMSYS_10009Resource doesn't exist for the provided search criteria500
PRMSYS_10011Unauthorized access to the resource404
PRMSYS_10012Unauthorized access — JWT value mismatch404
PRMVAL_10014Invalid date format400

Realtime Publish (PRMSYS_) Errors:

CodeMessageHTTP Status
PRMSYS_10002Malformed input data500
PRMSYS_10003Missing eventDetails or notification500
PRMSYS_10007Missing mandatory fields500
PRMSYS_10008Invalid institutionId500
PRMSYS_10013Missing Authorization Token500

Documents And Preferences Errors

Documents and Preferences APIs return errors related to institution disclosures, user disclosures, and electronic statements.

Institution and User Disclosures (DSC_) Errors

CodeMessageHTTP Status
DSC_10002Invalid request.400
DSC_10003Invalid operation.501
DSC_10009Invalid query param.400
DSC_11001Full authentication was not provided in the request.401
DSC_11002The authentication token that was sent in the request is invalid.401
DSC_11003The authentication provided does not authorize this request.401
DSC_11004A location id is required for business banking users400
DSC_12001Request should only contain printable ASCII characters.400
DSC_12002Request is missing a transactionId header.400
DSC_12003Request transactionId header is too long.400
DSC_12004Required fields are not provided or not valid.400
DSC_12005Request cannot be blank.400
DSC_12006Invalid or empty account type in request.400
DSC_12007Request header is too long400
DSC_12011One of the request field length is greater than max length.400
DSC_12012Disclosure ids from request body and URL do not match.400
DSC_12013Request callingAppId header is too long.400
DSC_12014RequestBody size exceeds limit.400
DSC_12015Disclosure not supported400
DSC_12016Account Id is missing in disclosure400
DSC_12017Paper waiver field is missing in disclosure400
DSC_13001Data not found for user400
DSC_13002Disclosures are not retrieved successfully.500
DSC_13003Disclosures are not created successfully.500
DSC_13004Disclosures are not updated successfully.500
DSC_13005The CIF number is required, but was not found400
DSC_22001Internal validation error.500
DSC_23002Error interacting with CBS Service500
DSC_23003Error interacting with CAS Service500
DSC_23004Error interacting with NIIS Service500
DSC_23005Error interacting with Accounts Service500
DSC_90000Server cannot handle this request.400
DSC_99997Client error400
DSC_99999Internal server error.500

Electronic Statements (UXESTMT_) Errors

CodeMessageHTTP Status
UXESTMT_10001Required Authorization header is missing400
UXESTMT_10002Invalid JWT token400
UXESTMT_10003Required role not present in JWT token403
UXESTMT_10004JWT token has expired400
UXESTMT_10005JWT does not contain institution ID400
UXESTMT_10006JWT does not contain institution customer ID400
UXESTMT_10007Required Correlation ID header is missing / invalid400
UXESTMT_10008Correlation ID is not a GUID400
UXESTMT_10011Invalid IP address in the header400
UXESTMT_10012Invalid Authorization in the header400
UXESTMT_11010Required input fields are missing400
UXESTMT_11012The given account id is not available in user disclosure400
UXESTMT_11013User disclosure should be in ACCEPTED status400
UXESTMT_11014InstitutionId is invalid or incorrectly configured400
UXESTMT_30001InstitutionId invalid or downstream service error500
UXESTMT_30002Error interacting with the external service500
UXESTMT_88888No primary customers found / no entitled customers (operation-specific)404
UXESTMT_88890No primary account found404
UXESTMT_88891No entitled customer/account / disclosure not available for account (operation-specific)404
UXESTMT_99998Cannot handle this request — check URL, body and parameters400
UXESTMT_99999Internal server error500

Customer Campaigns Errors

Customer Campaigns APIs return errors related to experience groups, jobs, promotion suite, and audience.

Experience Groups Errors

CodeMessageHTTP Status
1000Success (e.g. upload accepted, group deleted)200
2000Client / validation (e.g. invalid data, not found)400
2001Internal server error or generic bad request400 / 500
2003Invalid authorization401

Jobs Errors

CodeMessageHTTP Status
2000e.g. job not found, invalid request400
2001Internal server error500
2003Invalid authorization401

Promotions Suite Errors

HTTP StatusMessage
400Request does not meet specification; body includes userMessage
401Authorization error
429Too many concurrent user list jobs — retry later
500Unexpected server error

Audience Errors

HTTP StatusMessage
400Bad Request — invalid or missing parameters, headers, or body
500Internal Server Error — unexpected server failure

MX Errors

MX API integrates with MX Core Services. Error handling and response formats are documented in the MX API reference and at docs.mx.com. For Candescent gateway or authentication errors when calling MX endpoints, see Authentication Errors.

User Errors

HTTP StatusMessage
400Bad Request. Typical JSON fields: error, message, optional errors[]
401Unauthorized. Typical JSON fields: error, message
403Forbidden (e.g. list users). Typical JSON fields: error, message
404Not Found (e.g. unknown user). Typical JSON fields: error, message

Data Errors

HTTP StatusMessage
400Bad Request — invalid parameters or malformed request. Typical JSON fields: error, message, optional errors[] (field, message)
401Unauthorized — missing, invalid, or expired credentials. Typical JSON fields: error, message
403Forbidden — authenticated but not authorized. Typical JSON fields: error, message
404Not Found — resource missing or feature not enabled. Typical JSON fields: error, message (e.g. log download: institution may not be enabled for MX Logs, or ext_host / credentials misconfigured—"ClientReportingProfile does not exist" is called out in the log download operation description)

Widgets Errors

HTTP StatusMessage
400Bad Request. Typical JSON fields: error, message, optional errors[]
401Unauthorized. Typical JSON fields: error, message
404Not Found — user or widget resource not available. Typical JSON fields: error, message

Error Handling Best Practices

  1. Check HTTP Status
if (response.status === 401) {
// Token expired or invalid - refresh token or re-authenticate
} else if (response.status === 403) {
// Insufficient permissions - check required scopes
} else if (response.status === 400) {
// Client error - check request parameters
} else if (response.status >= 500) {
// Server error - implement retry with exponential backoff
}
  1. Parse Error Codes
const errorResponse = await response.json();
const errorCode = errorResponse.code;

switch (errorCode) {
case 'CMN_90004':
// Invalid credentials - prompt for new credentials
break;
case 'CMN_90018':
// Invalid token - refresh access token
break;
case 'TFR_10022':
// Insufficient funds - notify user
break;
default:
// Log error and display generic message
}
  1. Implement Retry Logic

For transient errors (5xx, rate limits), implement exponential backoff:

async function makeRequestWithRetry(url, options, maxRetries = 3) {
for (let attempt = 0; attempt < maxRetries; attempt++) {
const response = await fetch(url, options);

if (response.ok) return response;

const error = await response.json();

// Retry on rate limits or server errors
if (['CMN_90002', 'CMN_90003'].includes(error.code) || response.status >= 500) {
const delay = Math.pow(2, attempt) * 1000; // Exponential backoff
await new Promise(resolve => setTimeout(resolve, delay));
continue;
}

throw new Error(error.message);
}
}
  1. Log Errors with Context

Always include the transactionId header value in your logs when troubleshooting with Candescent support:

console.error({
transactionId: requestHeaders['transactionId'],
errorCode: error.code,
errorMessage: error.message,
endpoint: url,
timestamp: new Date().toISOString()
});