# Code and Formats
source: https://developer.mastercard.com/user-account-management-service/documentation/code-and-formats/index.md

## Errors Overview {#errors-overview}

The User Account Management Service uses standard HTTP response codes for success and failure notifications, and our errors are further classified by error type. In general, 200 HTTP codes correspond to success, 40X codes are for the developer or user-related failures, and 50X codes are for runtime or system errors.

This section contains information about the response codes and error messages that can be returned by the APIs.

## Application Error Codes {#application-error-codes}

### Error Structure {#error-structure}

4xx/5xx error response messages have the following format (the Error array may contain multiple error items):

```json

{
   "Errors": {
     "Error": [
       {
         "Source": "<Source api of the error, e.g. user-management",
         "ReasonCode": "<Unique code>",
         "Description": "<Description of the error>",
         "Recoverable": "true/false",
         "Details": "null"
       }
     ]
   }
 }
```

|      Field      |                                                                                                                                                 Description                                                                                                                                                  |
|-----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **Source**      | The application (user-management-api) generates this error. Every error message that is generated and returned by the gateway will have this field equal to Gateway. When the value of the source field is something else, it means the error was generated elsewhere. For example, the user-management-api. |
| **ReasonCode**  | The general cause of the error; see the table below. For example, INVALID_INPUT, ACCOUNT_NOT_FOUND                                                                                                                                                                                                           |
| **Description** | A textual description of the error. This is optional and will only be displayed if more information is available than is stored in the data identifier and reason code. For example, userid parameter cannot be null                                                                                         |
| **Recoverable** | A true/false indicator stating whether your API request might be successful if you re-sent the API request with the same parameters and data. For example, an unsuccessful API request caused by a server error (5xx response code) might be successful when re-sent. Valid values: true, false              |
| **Details**     | Each Open API service has the option to add extra service-specific error information in the Details section. The details are optional and might not be present for every error message. If present, the details are returned in the form of individual detail items, each containing a Name and Value pair.  |

## HTTP Response Codes {#http-response-codes}

The following is a complete list of the response codes that the application may return for requests. In the event of network or infrastructure issues, other response codes may be returned by the infrastructure.
Note: For further information about 4xx/5xx response codes and possible resolutions, see [Gateway Error Codes](https://developer.mastercard.com/platform/documentation/security-and-authentication/gateway-error-codes/).

|      HTTP Response Code       |                                                                                                                                                                                                 Description                                                                                                                                                                                                 |
|-------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **200 OK**                    | The request was completed successfully.                                                                                                                                                                                                                                                                                                                                                                     |
| **400 BAD REQUEST**           | General error when the request could not be fulfilled due to errors such as validation errors, or missing required data.                                                                                                                                                                                                                                                                                    |
| **401 UNAUTHORIZED**          | Error code response for missing or invalid authentication token. (for example, a client with a clientId does not have access)                                                                                                                                                                                                                                                                               |
| **403 FORBIDDEN**             | The user is not authorized to operate or the resource is unavailable for some reason (for example, time constraints).                                                                                                                                                                                                                                                                                       |
| **404 NOT FOUND**             | The requested resource is not found.                                                                                                                                                                                                                                                                                                                                                                        |
| **405 METHOD NOT ALLOWED**    | Used to indicate that the requested URL exists, but the requested HTTP method is not applicable. For example, POST /users/12345 where the API does not support the creation of resources this way (with a provided ID). The Allow HTTP header must be set when returning a 405 to indicate the HTTP methods that are supported. In the previous case, the header would look like "Allow: GET, PUT, DELETE". |
| **500 INTERNAL SERVER ERROR** | The server encountered an unexpected condition that prevented it from fulfilling the request. It indicates an error that the caller cannot address from their end. Requests resulting in a 500 response code will generally include the User Management API Errors structure in the response.                                                                                                               |
| **5XX SERVER ERROR**          | Errors that occur in the network infrastructure between the client and User Management API server will typically result in a response code in the 500 range. Note that errors returned by the network infrastructure will never contain the User Management API Errors structure in the response.                                                                                                           |

## User Account Management Error Codes {#user-account-management-error-codes}

Note: This API service does not support retry logic that returns the same response as the initial request. If retried, the API will respond with a 4xx error indicating a duplicate request, with a reason code such as `Multiple_users_found` or `Multiple_accounts_found`.

### Common error codes across endpoints {#common-error-codes-across-endpoints}

The following error codes are common across all services and applicable to every endpoint.

|        Reason Code         |                       Description                        | HTTP Response Code |                                                                                                    Resolution Steps                                                                                                     |
|----------------------------|----------------------------------------------------------|--------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| PROGRAM_MAPPING_ERROR      | No Enterprise Site record found for ClientId.            | 401                | This is a Configuration issue. Please work with assigned regional manager or product delivery team to set up this configuration.                                                                                        |
| UNAUTHORIZED               | Client Identity is unknown.                              | 401                | Client Id is missing in the request. Send a valid client id along with the request. If you are still seeing this issue then please work with assigned regional manager or product delivery team for this configuration. |
| SITE_PROGRAM_MAPPING_ERROR | No access to enroll in the program.                      | 401                | This is a Configuration issue. Please work with assigned regional manager or product delivery team to set up this configuration.                                                                                        |
| INTERNAL_SERVER_ERROR      | System error occurred in enrollment.                     | 500                | Internal server error can be thrown for unknown reasons. Please work with assigned regional manager or product delivery team for this configuration.                                                                    |
| ACCOUNT_NOT_FOUND          | The accountId in the request is not valid.               | 401                | Provide a valid accountId (BAN/RANAC) in the request.                                                                                                                                                                   |
| MULTIPLE_ACCOUNTS_FOUND    | Multiple ranac's are associated with a single accountId  | 401                | Duplicate accountId's found (BAN) found. Please work with assigned regional manager or product delivery team for this configuration.                                                                                    |
| USER_NOT_FOUND             | The userId in the request is not valid.                  | 401                | Provide a valid userId (BCN/RANCU) in the request.                                                                                                                                                                      |
| MULTIPLE_USERS_FOUND       | Multiple rancu's are associated with a single customerId | 401                | Duplicate userId's found (BCN) found. Please work with assigned regional manager or product delivery team for this configuration.                                                                                       |
| DECRYPTION_ERROR           | Failed to decrypt the request body.                      | 400                | Unable to decrypt the request. Please ensure a valid decryption certificate is used.                                                                                                                                    |
| ENCRYPTION_ERROR           | The request body is not encrypted.                       | 400                | Ensure the the request body is encrypted.                                                                                                                                                                               |
| LUHN_CHECK_ERROR           | Luhn check validation failed.                            | 400                | Luhn check validation failed for accountId. Please provide a valid accountId.                                                                                                                                           |

### POST /accounts {#post---accounts}

|           Reason Code           |                                         Description                                          | HTTP Response Code |                                                                                                                          Resolution Steps                                                                                                                          |
|---------------------------------|----------------------------------------------------------------------------------------------|--------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT                   | supported value for userIdType is BCN or RANCU.                                              | 400                | Refer to the correct field value mentioned in the account enroll endpoint API reference here [EnrollAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#enroll-account/), and try again. |
| INVALID_INPUT                   | supported value for accountIdType is BAN.                                                    | 400                | Refer to the correct field value mentioned in the account enroll endpoint API reference here [EnrollAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#enroll-account/), and try again. |
| INVALID_INPUT                   | supported value for accountStatus are NEW and GOOD_STANDING.                                 | 400                | Refer to the correct field value mentioned in the account enroll endpoint API reference here [EnrollAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#enroll-account/), and try again. |
| INVALID_INPUT                   | When accountStatus is Good Standing the accurePoints can not be false.                       | 400                | Refer to the correct field value mentioned in the account enroll endpoint API reference here [EnrollAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#enroll-account/), and try again. |
| INVALID_INPUT                   | A specific parameter in the request has invalid characters.                                  | 400                | Refer to the correct field value mentioned in the account enroll endpoint API reference here [EnrollAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#enroll-account/), and try again. |
| INVALID_MEMBER_ICA              | companyICA is not valid.                                                                     | 401                | Company ICA does not exist, or end dated. Please work with assigned regional manager or product delivery team for this configuration.                                                                                                                              |
| INVALID_PROGRAM_IDENTIFIER      | Program identifier is not valid.                                                             | 400                | Provide a valid Program Identifier. The Program Identifier sent in the request is not valid or doesn't exist. Please work with assigned regional manager or product delivery team for this configuration.                                                          |
| ACCOUNT_ALREADY_EXIST           | Account already exists.                                                                      | 400                | Provide a unique accountId (BAN) which is not enrolled.                                                                                                                                                                                                            |
| INVALID_PRODUCT_CODE            | productCode is not valid.                                                                    | 400                | Provide a valid Bank Product Code. The Bank Product Code sent in the request is not valid or doesn't exist. Please work with assigned regional manager or product delivery team for this configuration.                                                            |
| ACCOUNT_ALREADY_ENROLLED        | account is already enrolled.                                                                 | 400                | Provided accountId (BAN) is already Enrolled under userId (BCN).                                                                                                                                                                                                   |
| ENROLLMENT_FILTER_ERROR         | Enrollment filter validations failed.                                                        | 400                | Enrollment filter validations failed. Please check program parameter configurations related to card enrollment. Please work with assigned regional manager or product delivery team for this configuration.                                                        |
| PROGRAM_CONFIG_ERROR            | Program is not subscribed to enrollment service.                                             | 400                | Ensure the program is mapped to the enrollment service method. Please work with assigned regional manager or product delivery team for this configuration.                                                                                                         |
| ADDITIONAL_ACCOUNTS_NOT_ALLOWED | The program is not configured to allow enrolling additional accounts under an existing user. | 400                | Enable program configuration to allow enrolling additional accounts under an existing user.                                                                                                                                                                        |

### GET /accounts/{id} {#get---accountsid}

|  Reason Code  |                     Description                     | HTTP Response Code |                                                                                                                            Resolution Steps                                                                                                                             |
|---------------|-----------------------------------------------------|--------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT | Supported value for account_id_type is RANAC.       | 400                | Refer to the correct field value mentioned in the retrieve account endpoint API reference here [RetrieveAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#retrieve-account), and try again. |
| INVALID_INPUT | offset cannot be negative.                          | 400                | Refer to the correct field value mentioned in the retrieve account endpoint API reference here [RetrieveAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#retrieve-account), and try again. |
| INVALID_INPUT | limit must be greater than 0.                       | 400                | Refer to the correct field value mentioned in the retrieve account endpoint API reference here [RetrieveAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#retrieve-account), and try again. |
| INVALID_INPUT | limit must not be greater than 25.                  | 400                | Refer to the correct field value mentioned in the retrieve account endpoint API reference here [RetrieveAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#retrieve-account), and try again. |
| INVALID_INPUT | Either user_id_type or account_id_type is required. | 400                | Refer to the correct field value mentioned in the retrieve account endpoint API reference here [RetrieveAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#retrieve-account), and try again. |
| INVALID_INPUT | supported value for user_id_type is RANCU.          | 400                | Refer to the correct field value mentioned in the retrieve account endpoint API reference here [RetrieveAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#retrieve-account), and try again. |

### PUT /account-groups {#put---account-groups}

|             Reason Code              |                                          Description                                          | HTTP Response Code |                                                                                                                         Resolution Steps                                                                                                                         |
|--------------------------------------|-----------------------------------------------------------------------------------------------|--------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT                        | Supported value for sourceIdType is RANAC.                                                    | 400                | Refer to the correct field value mentioned in the account groups endpoint API Reference here [AccountGroup](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#group-accounts), and try again. |
| INVALID_INPUT                        | Invalid actionCode. Permitted values are MA, MH, DA, DH.                                      | 400                | Refer to the correct field value mentioned in the account groups endpoint API Reference here [AccountGroup](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#group-accounts), and try again. |
| INVALID_INPUT                        | targetId cannot be null or empty.                                                             | 400                | Refer to the correct field value mentioned in the account groups endpoint API Reference here [AccountGroup](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#group-accounts), and try again. |
| INVALID_INPUT                        | targetIdType cannot be null or empty and should be HHID.                                      | 400                | Refer to the correct field value mentioned in the account groups endpoint API Reference here [AccountGroup](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#group-accounts), and try again. |
| INVALID_INPUT                        | targetId must be numeric.                                                                     | 400                | Refer to the correct field value mentioned in the account groups endpoint API Reference here [AccountGroup](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#group-accounts), and try again. |
| INVALID_INPUT                        | Supported value for targetIdType is HHT.                                                      | 400                | Refer to the correct field value mentioned in the account groups endpoint API Reference here [AccountGroup](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#group-accounts), and try again. |
| INVALID_INPUT                        | targetId is already used.                                                                     | 400                | Refer to the correct field value mentioned in the account groups endpoint API Reference here [AccountGroup](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#group-accounts), and try again. |
| INVALID_INPUT                        | source account already exists in target account group.                                        | 400                | Check your request params and try again.                                                                                                                                                                                                                         |
| INVALID_INPUT                        | Cancelled Accounts cannot be moved.                                                           | 400                | Make sure the source account is not in a cancelled status and try again.                                                                                                                                                                                         |
| INVALID_INPUT                        | targetId is not eligible.                                                                     | 400                | TargetId used does not have primary redeemer status. Please use an eligible targetId and try again.                                                                                                                                                              |
| SOURCE_ACCOUNT_NOT_PERMITTED_TO_MOVE | Source account cannot move to target account group in a different program.                    | 400                | Source account cannot move to target account group in a different program. Please provide a target account group under same program.                                                                                                                             |
| NO_PRIMARY_ACCOUNT_IN_TARGET         | Target account group does not have a primary account.                                         | 400                | Target account group does not have a primary account. Please provide another target account group under same program.                                                                                                                                            |
| MULTIPLE_PRIMARY_ACCOUNTS_IN_TARGET  | Multiple Primary Accounts found in target account group.                                      | 400                | Target account group should not have multiple primary account. Please provide another target account group under same program.                                                                                                                                   |
| INVALID_SOURCE_ACCOUNT_STATUS        | Source account does not have a valid status in the account group.                             | 400                | Make sure that source account is having an active account group.                                                                                                                                                                                                 |
| ACCOUNT_GROUPING_FAILED              | Unable to update account group. Please look into details field and reach out to support team. | 400                | Unable to update account group. Please work with assigned regional manager or product delivery team for this configuration.                                                                                                                                      |
| SOURCE_TARGET_SAME_GROUP             | sourceId and targetId are in same account group.                                              | 400                | The sourceId and targetId can not belong to same account group. Please make sure to move to a different target account group.                                                                                                                                    |
| TARGET_ACCOUNT_NOT_GOOD_STANDING     | Target account group does not have an account in good standing.                               | 400                | Target account group does not have an account with GOOD_STANDING status. Please provide a valid target account group having active primary account.                                                                                                              |
| TARGET_ACCOUNT_LOST_STOLEN           | Primary account in target account group is lost/stolen.                                       | 400                | Primary account in target account group is lost/stolen. Please provide another target account group under same program or update primary account in target account group.                                                                                        |
| TARGET_ACCOUNT_NOT_SUPPORT_GROUPING  | Target account group's program does not support account grouping.                             | 400                | Target account group's program does not support account grouping. Please work with assigned regional manager or product delivery team to allow account grouping for the program.                                                                                 |
| SOURCE_ACCOUNT_LOST_STOLEN           | Source account is lost/stolen.                                                                | 400                | Source account is lost/stolen. Please provide a valid account.                                                                                                                                                                                                   |
| SOURCE_ACCOUNT_NOT_SUPPORT_GROUPING  | Source account program does not support account grouping.                                     | 400                | Source account's program does not support account grouping. Please work with assigned regional manager or product delivery team to allow account grouping for the program.                                                                                       |
| SOURCE_ACCOUNT_NOT_GOOD_STANDING     | Source account is not in good standing.                                                       | 400                | Source account is not in good standing. Please update source account status to GOOD_STANDING to perform this action.                                                                                                                                             |
| ACCOUNT_GROUP_LIMIT_EXCEEDED         | Target account group already contains maximum number of accounts.                             | 400                | Target account group already contains maximum number of accounts. Please use different target account group id and try again.                                                                                                                                    |

### PUT /accounts {#put---accounts}

|        Reason Code         |                                            Description                                            | HTTP Response Code |                                                                                                                         Resolution Steps                                                                                                                          |
|----------------------------|---------------------------------------------------------------------------------------------------|--------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT              | Supported value for accountIdType is RANAC.                                                       | 400                | Refer to the correct field value mentioned in the update account endpoint API Reference here [UpdateAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#update-account), and try again. |
| INVALID_INPUT              | bankProductCode cannot be null or empty if productTransfer is true.                               | 400                | Refer to the correct field value mentioned in the update account endpoint API Reference here [UpdateAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#update-account), and try again. |
| INVALID_INPUT              | cycleId is not valid.                                                                             | 400                | Refer to the correct field value mentioned in the update account endpoint API Reference here [UpdateAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#update-account), and try again. |
| INVALID_INPUT              | Customer already has an account with the BankProductCode.                                         | 400                | Refer to the correct field value mentioned in the update account endpoint API Reference here [UpdateAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#update-account), and try again. |
| INVALID_INPUT              | Both account status and primary account switch can't be updated in the same request.              | 400                | Refer to the correct field value mentioned in the update account endpoint API Reference here [UpdateAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#update-account), and try again. |
| INVALID_INPUT              | Cancelled account can not be made primary in the Account Group.                                   | 400                | Update account status to good standing to perform this action. Please work with assigned regional manager or product delivery team for this configuration.                                                                                                        |
| INVALID_INPUT              | Bank Product Code is not valid.                                                                   | 400                | Refer to the correct field value mentioned in the update account endpoint API Reference here [UpdateAccount](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/account-management/index.md#update-account), and try again. |
| ELIGIBLE_ACCOUNT_NOT_FOUND | Unable to update the primary flag. There is no other eligible account found in the account group. | 400                | To update the primary flag for the given account, the account group must have another active account.                                                                                                                                                             |
| PRIMARY_ACCOUNT_NOT_FOUND  | Unable to update the primary flag. There is no other primary account found in the account group.  | 400                | To update the primary flag for the given account, the account group must have a primary account.                                                                                                                                                                  |

### POST /accounts/activations {#post---accountsactivations}

|           Reason Code           |                                              Description                                               | HTTP Response Code |                                                                                                                                        Resolution Steps                                                                                                                                         |
|---------------------------------|--------------------------------------------------------------------------------------------------------|--------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT                   | Supported value for userIdType is RANAC.                                                               | 400                | Refer to the correct field value mentioned in the add CLS activation endpoint API Reference here [AddCLS](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/cls-offer-activation/index.md#add-card-linked-services-cls-offer-activation), and try again. |
| INVALID_INPUT                   | supported value for activationStatus is A or I.                                                        | 400                | Refer to the correct field value mentioned in the add CLS activation endpoint API Reference here [AddCLS](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/cls-offer-activation/index.md#add-card-linked-services-cls-offer-activation), and try again. |
| INVALID_INPUT                   | transactionFilterCode is not valid.                                                                    | 400                | Refer to the correct field value mentioned in the add CLS activation endpoint API Reference here [AddCLS](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/cls-offer-activation/index.md#add-card-linked-services-cls-offer-activation), and try again. |
| INVALID_INPUT                   | activationStatus cannot be null or empty.                                                              | 400                | Refer to the correct field value mentioned in the add CLS activation endpoint API Reference here [AddCLS](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/cls-offer-activation/index.md#add-card-linked-services-cls-offer-activation), and try again. |
| DUPLICATE_RECORD                | Duplicate record found while adding Mapped Record.                                                     | 400                | Provide a unique activationId while sending in the request or do not provide any value in the activationId as it is a UUID.                                                                                                                                                                     |
| INVALID_TRANSACTION_FILTER_CODE | Map Type code is invalid for the Map Type Program.                                                     | 400                | Use appropriate map type code based on map type program.                                                                                                                                                                                                                                        |
| MAPPING_FAILED                  | Unable to perform the mapping. Please look into the `Details` field and reach out to the support team. | 400                | This error can be thrown for unknown reasons. Please work with assigned regional manager or product delivery team for this configuration.                                                                                                                                                       |

### PUT /accounts/{account_id}/activations/{activation_id} {#put---accountsaccount_idactivationsactivation_id}

|         Reason Code          |                                              Description                                               | HTTP Response Code |                                                                                                                                               Resolution Steps                                                                                                                                               |
|------------------------------|--------------------------------------------------------------------------------------------------------|--------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT                | supported value for activationStatus is A or I.                                                        | 400                | Refer to the correct field value mentioned in the update account activations endpoint API Reference here [UpdateCLS](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/cls-offer-activation/index.md#update-card-linked-servicescls-offer-activation), and try again. |
| INVALID_INPUT                | transactionFilterCode is not valid.                                                                    | 400                | Refer to the correct field value mentioned in the update account activations endpoint API Reference here [UpdateCLS](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/cls-offer-activation/index.md#update-card-linked-servicescls-offer-activation), and try again. |
| INVALID_INPUT                | activationStatus cannot be null or empty.                                                              | 400                | Refer to the correct field value mentioned in the update account activations endpoint API Reference here [UpdateCLS](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/cls-offer-activation/index.md#update-card-linked-servicescls-offer-activation), and try again. |
| TRANSACTION_FILTER_CODE_NULL | Transaction Filter Code cannot be null or empty.                                                       | 400                | Provide a valid transactionFilterCode in the request.                                                                                                                                                                                                                                                        |
| MAPPING_FAILED               | Unable to perform the mapping. Please look into the `Details` field and reach out to the support team. | 400                | This error can be thrown for unknown reasons. Please work with assigned regional manager or product delivery team for this configuration.                                                                                                                                                                    |

### GET /accounts/{account_id}/activations {#get----accountsaccount_idactivations}

|  Reason Code  |             Description             | HTTP Response Code |                                                                                                                                           Resolution Steps                                                                                                                                            |
|---------------|-------------------------------------|--------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT | account_id cannot be null or empty. | 400                | Refer to the correct field value mentioned in the get account activations API Reference here [RetrieveCLS](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/cls-offer-activation/index.md#retrieve-card-linked-servicescls-offer-activations), and try again. |

### POST /accounts/pan-blocks {#post---accountspan-blocks}

|   Reason Code   |                          Description                           | HTTP Response Code |                                                                                                    Resolution Steps                                                                                                    |
|-----------------|----------------------------------------------------------------|--------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT   | Supported value for accountIdType is BAN.                      | 400                | Refer to the correct field value mentioned in the pan block API Reference here [PanBlock](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/pan-block/index.md), and try again. |
| INVALID_INPUT   | beginDate should be greater than or equal to current date.     | 400                | Refer to the correct field value mentioned in the pan block API Reference here [PanBlock](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/pan-block/index.md), and try again. |
| INVALID_INPUT   | endDate should be greater than or equal to current date.       | 400                | Refer to the correct field value mentioned in the pan block API Reference here [PanBlock](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/pan-block/index.md), and try again. |
| INVALID_INPUT   | beginDate should be less than or equal to endDate.             | 400                | Refer to the correct field value mentioned in the pan block API Reference here [PanBlock](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/pan-block/index.md), and try again. |
| INVALID_INPUT   | Invalid date format.                                           | 400                | Refer to the correct field value mentioned in the pan block API Reference here [PanBlock](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/pan-block/index.md), and try again. |
| INVALID_INPUT   | beginDate should be less than or equal to existing endDate.    | 400                | Refer to the correct field value mentioned in the pan block API Reference here [PanBlock](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/pan-block/index.md), and try again. |
| INVALID_INPUT   | endDate should be greater than or equal to existing beginDate. | 400                | Refer to the correct field value mentioned in the pan block API Reference here [PanBlock](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/pan-block/index.md), and try again. |
| INVALID_INPUT   | Program Identifier is not valid.                               | 400                | Refer to the correct field value mentioned in the pan block API Reference here [PanBlock](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/pan-block/index.md), and try again. |
| PAN_BLOCK_ERROR | Error Occurred while doing PAN block for auto enrollment.      | 500                | This error can be thrown for unknown reasons. Please work with assigned regional manager or product delivery team for this configuration.                                                                              |

### POST /users {#post---users}

|        Reason Code         |                                   Description                                    | HTTP Response Code |                                                                                                                 Resolution Steps                                                                                                                 |
|----------------------------|----------------------------------------------------------------------------------|--------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT              | supported value for accountIdType is BAN.                                        | 400                | Refer to the correct field value mentioned in the user enrollment API Reference here [EnrollUser](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/user-management/index.md#enroll-user), and try again. |
| INVALID_INPUT              | supported value for userIdType is BCN.                                           | 400                | Refer to the correct field value mentioned in the user enrollment API Reference here [EnrollUser](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/user-management/index.md#enroll-user), and try again. |
| INVALID_INPUT              | supported value for accountStatus are New and GOOD_STANDING.                     | 400                | Refer to the correct field value mentioned in the user enrollment API Reference here [EnrollUser](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/user-management/index.md#enroll-user), and try again. |
| INVALID_INPUT              | When account status is Good Standing then accruePoints can not be false..        | 400                | Use a valid account status and accurePoints combination and try again.                                                                                                                                                                           |
| INVALID_INPUT              | A specific parameter in the request has invalid characters.                      | 400                | Refer to the correct field value mentioned in the user enrollment API Reference here [EnrollUser](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/user-management/index.md#enroll-user), and try again. |
| INVALID_INPUT              | BCN cannot be greater than 30 characters.                                        | 400                | Refer to the correct field value mentioned in the user enrollment API Reference here [EnrollUser](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/user-management/index.md#enroll-user), and try again. |
| INVALID_MEMBER_ICA         | companyICA is not valid.                                                         | 401                | Company ICA does not exist, or end dated. Please work with assigned regional manager or product delivery team for this configuration.                                                                                                            |
| INVALID_PROGRAM_IDENTIFIER | Program identifier is not valid.                                                 | 400                | Send a valid Program identifier in the request.                                                                                                                                                                                                  |
| USER_ALREADY_EXIST         | User already exist                                                               | 400                | User already exists. Retry with a new userId (BCN).                                                                                                                                                                                              |
| INVALID_PRODUCT_CODE       | productCode is not valid.                                                        | 400                | Use a valid product code in the request.                                                                                                                                                                                                         |
| ENROLLMENT_FILTER_ERROR    | Enrollment filter validations failed.                                            | 400                | Enrollment filter validations failed. Please check program parameter configurations related to card enrollment. Please work with assigned regional manager or product delivery team for this configuration.                                      |
| PROGRAM_CONFIG_ERROR       | Configuration error. The program is not mapped to the enrollment service method. | 400                | Ensure the program is mapped to the enrollment service method. Please work with assigned regional manager or product delivery team for this configuration.                                                                                       |

### PUT /users {#put----users}

|  Reason Code  |                    Description                    | HTTP Response Code |                                                                                                               Resolution Steps                                                                                                               |
|---------------|---------------------------------------------------|--------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT | supported value for userIdType is RANAC or RANCU. | 400                | Refer to the correct field value mentioned in the update user API Reference here [UpdateUser](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/user-management/index.md#update-user), and try again. |

### GET /users/{id} {#get----usersid}

|  Reason Code  |                            Description                             | HTTP Response Code |                                                                                                                                      Resolution Steps                                                                                                                                      |
|---------------|--------------------------------------------------------------------|--------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT | supported value for user_id_type is RANAC or RANCU.                | 400                | Refer to the correct field value mentioned in the get user API Reference here [RetrieveUser](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/user-management/index.md#retrieve-user), and try again.                                              |
| INVALID_INPUT | language in the request is not valid.                              | 400                | Please send a valid language in the request. Refer to the correct field value mentioned in the get user API Reference here [RetrieveUser](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/user-management/index.md#retrieve-user), and try again. |
| INVALID_INPUT | Security questions are not configured in the cardholder's program. | 400                | Change includeVerificationDetails in the request to false and try again.                                                                                                                                                                                                                   |
| INVALID_INPUT | Verification details were not found for the User.                  | 400                | Set up verification details or change includeVerificationDetails in the request to false and try again.                                                                                                                                                                                    |

### POST /users/references/searches {#post----usersreferencessearches}

|  Reason Code  |                                               Description                                                | HTTP Response Code |                                                                                                                 Resolution Steps                                                                                                                  |
|---------------|----------------------------------------------------------------------------------------------------------|--------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT | supported value for userIdType is RANAC, RANCU, BAN, BCN or MBL.                                         | 400                | Refer to the correct field value mentioned in the Lookup Identifiers API Reference here [LookupIdentifiers](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/lookup-identifiers/index.md), and try again. |
| INVALID_INPUT | programIdentifier can only be used when userIdType is BAN,BCN or RANCU.                                  | 400                | Please remove programIdentifier from the request.                                                                                                                                                                                                 |
| INVALID_INPUT | user_id_type is required.                                                                                | 400                | Refer to the correct field value mentioned in the Lookup Identifiers API Reference here [LookupIdentifiers](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/lookup-identifiers/index.md), and try again. |
| INVALID_INPUT | User identifier AREF must be 20 characters long.                                                         | 400                | Please enter a 20 characters long AREF.                                                                                                                                                                                                           |
| INVALID_INPUT | User is not allowed to request Sensitive Information.                                                    | 400                | Please change includeSensitiveIdentifiers field in the request to false.                                                                                                                                                                          |
| INVALID_INPUT | The requested client does not have access. Please look into details field and reach out to support team. | 400                | The AREF provided in the request does not have access. Please change the request parameters.                                                                                                                                                      |
| INVALID_INPUT | No primary account found.                                                                                | 400                | Please send a valid userId in the request.                                                                                                                                                                                                        |

### POST /lost-stolen-cards {#post---lost-stolen-cards}

|             Reason Code             |                                                                                                                       Description                                                                                                                       | HTTP Response Code |                                                                                                                               Resolution Steps                                                                                                                                |
|-------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT                       | status cannot be null or empty when actionCode is either A or B.                                                                                                                                                                                        | 400                | Refer to the correct field value mentioned in the Lost Stolen API Reference here [LostStolen](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/lost-stolen-card/index.md), and try again.                                             |
| INVALID_INPUT                       | oldAccountId cannot be null or empty.                                                                                                                                                                                                                   | 400                | Refer to the correct field value mentioned in the Lost Stolen API Reference here [LostStolen](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/lost-stolen-card/index.md), and try again.                                             |
| INVALID_INPUT                       | newAccountNumber cannot be null or empty when actionCode is either A or B.                                                                                                                                                                              | 400                | Refer to the correct field value mentioned in the Lost Stolen API Reference here [LostStolen](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/lost-stolen-card/index.md), and try again.                                             |
| INVALID_INPUT                       | newCustomerNumber cannot be null or empty when actionCode is either C or S.                                                                                                                                                                             | 400                | Refer to the correct field value mentioned in the Lost Stolen API Reference here [LostStolen](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/lost-stolen-card/index.md), and try again.                                             |
| BANK_CUSTOMER_NUMBER_SAME           | New bank customer number is same as previous bank customer number.                                                                                                                                                                                      | 400                | Provide a unique bank customer number while performing actionCode C or S.                                                                                                                                                                                                     |
| BANK_ACCOUNT_NUMBER_SAME            | New bank account number is same as previous bank account number.                                                                                                                                                                                        | 400                | Provide a unique bank account number while performing actionCode A or B                                                                                                                                                                                                       |
| LOST_STOLEN_FOUND                   | Previous account found lost or stolen.                                                                                                                                                                                                                  | 400                | This error is thrown when the account you are trying to perform lostStolen operation is already lost/stolen. Please work with assigned regional manager or product delivery team for this configuration.                                                                      |
| INACTIVE_ACCOUNT_STATUS             | Previous account status is Inactive.                                                                                                                                                                                                                    | 400                | Make sure the account you are trying to perform lost/stolen is not in inactive status.                                                                                                                                                                                        |
| REPLACEMENT_ACCOUNT_FAILED          | Replacement bank account number failed checksum validation.                                                                                                                                                                                             | 400                | This error is thrown If the replacement bank account number bank_product_id's checksum_type_cd value is set to Y. Please work with assigned regional manager or product delivery team for this configuration.                                                                 |
| NEW_ACCOUNT_STATUS_INACTIVE         | The new account status is invalid or inactive.                                                                                                                                                                                                          | 400                | The Status should not be invalid or INACTIVE in the request while performing lost/stolen on newAccountNumber                                                                                                                                                                  |
| REPLACEMENT_ACCOUNT_LOST_STOLEN     | Replacement account is lost or stolen.                                                                                                                                                                                                                  | 400                | The replacement account is lost or stolen. Please provide details related to a valid account.                                                                                                                                                                                 |
| REPLACEMENT_ACCOUNT_INACTIVE_STATUS | Replacement account status is inactive.                                                                                                                                                                                                                 | 400                | Replacement account status should not be inactive. Please update account status of new account.                                                                                                                                                                               |
| HOUSEHOLD_ID_MISMATCH               | Replacement card number belongs to a multi-card household and it is not the same household of the previous card number.                                                                                                                                 | 400                | Both old and new account should belong to same account group. Please update account group or household details of new account.                                                                                                                                                |
| MULTIPLE_HOUSEHOLDS                 | Either the new household is the same as the previous household and the new card number belonged to more than 1 household, or, the new household is not the same as the previous household and the new card number belonged to more than two households. | 400                | Both old and new account should belong to same account group. Please update account group or household details of new account.                                                                                                                                                |
| INVALID_PROGRAM                     | Replacement account is in a different program than the program for the previous account.                                                                                                                                                                | 400                | Both old and new account should belong to same program. Please update program mapping of new account.                                                                                                                                                                         |
| DUPLICATE_CUSTOMER_ACCOUNT          | Replacement account is already enrolled. Customer account has found a duplicate record with the same BAN, BP, and CustomerId.                                                                                                                           | 400                | Make sure the requested account's BAN and bankProductId doesn't have any duplicate record and trying to replace it with the same customer. If you are still seeing the issue then please work with assigned regional manager or product delivery team for this configuration. |
| HH_ELIGIBILITY_FAILED               | Invalid customer or customer is already replaced.                                                                                                                                                                                                       | 400                | Provide a valid newCustomerNumber in the request. If you are still seeing the issue then please work with assigned regional manager or product delivery team for this configuration.                                                                                          |
| CUSTOMER_NOT_FOUND                  | Customer not found.                                                                                                                                                                                                                                     | 400                | Provide a valid newCustomerNumber(BCN) in the request.                                                                                                                                                                                                                        |
| BANK_PRODUCT_NOT_FOUND              | Bank product not found.                                                                                                                                                                                                                                 | 400                | Old account does not have a valid bank product id. Please update bank product mapping details for old account.                                                                                                                                                                |
| LSWS_ERR_NEW_ACCT_ALREADY_REPL      | Replacement account is already a replacement for a lost or stolen card.                                                                                                                                                                                 | 400                | Replacement account has already been used, please provide a new valid replacement account.                                                                                                                                                                                    |
| INVALID_CARD_NUMBER                 | Invalid card number.                                                                                                                                                                                                                                    | 400                | Please provide valid account details.                                                                                                                                                                                                                                         |
| LOST_STOLEN_FAILED                  | Unable to perform lost stolen. Please look into the `Details` field and reach out to the support team.                                                                                                                                                  | 400                | This error can be thrown for unknown reasons. Please work with assigned regional manager or product delivery team for this configuration.                                                                                                                                     |

### POST /users/{id}/verifications {#post----usersidverifications}

|  Reason Code  |                               Description                                | HTTP Response Code |                                                                                                                                Resolution Steps                                                                                                                                |
|---------------|--------------------------------------------------------------------------|--------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| INVALID_INPUT | User verification failed. The verification answer provided is not valid. | 400                | Ensure that all verification answers provided are correct.                                                                                                                                                                                                                     |
| INVALID_INPUT | Supported value for userIdType is RANAC or RANCU.                        | 400                | Check request parameter and ensure to provide RANAC or RANCU as userIdType parameter value.                                                                                                                                                                                    |
| INVALID_INPUT | User verification details is missing or not valid.                       | 400                | Ensure that verification answer is not empty.                                                                                                                                                                                                                                  |
| INVALID_INPUT | Invalid date format. Birthdate is expected in 'yyyy-MM-dd' format.       | 400                | Refer to the correct field value mentioned in the Verify User API Reference for correct field value mentioned here [VerifyUser](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/user-management/index.md#verify-user), and try again. |
| INVALID_INPUT | User verification question code is not valid.                            | 400                | Refer to the correct field value mentioned in the Verify User API Reference for correct field value mentioned here [VerifyUser](https://developer.mastercard.com/user-account-management-service/documentation/use-cases/user-management/index.md#verify-user), and try again. |
| INVALID_INPUT | UserVerificationDetails can not be empty.                                | 400                | UserVerificationDetails must contain at least one verification question code and verification answer pair.                                                                                                                                                                     |

