> ## Documentation Index
> Fetch the complete documentation index at: https://grandcentral.backbase.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Error codes

> Status codes, errors, and responses for Grand Central APIs

Grand Central uses status codes, errors, and responses to communicate the results of API requests. This page explains the status codes, error response structure, naming conventions for error keys, and common error codes used in Grand Central Unified APIs.

## Status codes

A server issues status codes in response to a client's request. The following table describes the standard HTTP status codes that Grand Central APIs return.

| Status code | Description            |
| ----------- | ---------------------- |
| `200`       | OK.                    |
| `201`       | Created.               |
| `204`       | Success.               |
| `400`       | Bad request.           |
| `401`       | Unauthorized.          |
| `404`       | Resource not found.    |
| `500`       | Internal server error. |
| `504`       | Gateway timeout.       |

## Error codes

An error code is a numeric or alphanumeric code that indicates the nature of an error and, when possible, why it occurred.

### Generic errors

Generic errors apply across all Grand Central connectors and API operations.

#### Authentication and credential errors

The following table describes errors related to authentication and credentials.

| HTTP error | Error code | Error key             | Description                                                            |
| ---------- | ---------- | --------------------- | ---------------------------------------------------------------------- |
| `400`      | `GC001`    | `INVALID_CREDENTIALS` | The provided username or password is invalid.                          |
| `401`      | `GC002`    | `UNAUTHORISED`        | The caller doesn't have valid authentication for the target resource.  |
| `409`      | `GC003`    | `CONFLICT`            | The request conflicts with an existing resource or record.             |
| `403`      | `GC004`    | `FORBIDDEN`           | The caller lacks the necessary permissions to complete this operation. |
| `401`      | `GC005`    | `UNAUTHORISED`        | The `Referer` HTTP header is invalid or missing.                       |
| `410`      | `GC006`    | `GONE`                | Resource is permanently unavailable.                                   |
| `400`      | `GC007`    | `INVALID_CREDENTIALS` | Authorization parameters are missing.                                  |
| `400`      | `GC008`    | `INVALID_TOKEN`       | The server can't validate the token.                                   |

#### API connector-specific errors

The following table describes errors specific to API connector operations.

| HTTP error | Error code | Error key                           | Description                                                                   |
| ---------- | ---------- | ----------------------------------- | ----------------------------------------------------------------------------- |
| `400`      | `GC021`    | `INVALID_API_OPERATION`             | The API URI is incorrect.                                                     |
| `400`      | `GC022`    | `URI_NOT_FOUND`                     | Invalid invocation of API. Try again.                                         |
| `422`      | `GC023`    | `METHOD_NOT_IMPLEMENTED`            | This operation doesn't implement the specified HTTP method.                   |
| `400`      | `GC024`    | `INVALID_JSON_SYNTAX`               | Invalid JSON received.                                                        |
| `422`      | `GC025`    | `REQUEST_VALIDATION_FAILURES`       | The request failed validation.                                                |
| `422`      | `GC026`    | `SCHEMA_VALIDATION_FAILURES`        | The request doesn't match the expected schema.                                |
| `500`      | `GC027`    | `INTERNAL_SERVICE_ERROR`            | An unexpected error occurred within the service.                              |
| `500`      | `GC028`    | `CORE_SERVICE_ERROR`                | The core returned an unexpected error. Check the details in the core message. |
| `500`      | `GC029`    | `UNKNOWN_CORE_SERVICE_ERROR`        | Unexpected error from the core.                                               |
| `400`      | `GC030`    | `INVALID_PRODUCT_DETAILS`           | The specified product details are invalid.                                    |
| `429`      | `GC031`    | `TOO_MANY_REQUESTS`                 | Client has sent too many requests in a given amount of time.                  |
| `400`      | `GC050`    | `INVALID_PAGINATION_OFFSET_VALUE`   | Invalid offset value received. Value should be within `<valid-offset>`.       |
| `400`      | `GC051`    | `INVALID_PAGINATION_LIMIT_VALUE`    | Invalid limit received. Value should be within `<valid-limit>`.               |
| `413`      | `GC052`    | `MAX_FILE_SIZE_EXCEEDED`            | The file size exceeds the limit of `<file-size-limit>`.                       |
| `400`      | `GC053`    | `MAX_FILENAME_LENGTH_EXCEEDED`      | The filename exceeds the maximum limit of `<file-name-length>`.               |
| `404`      | `GC054`    | `NO_RECORD&#40;S&#41;_FOUND`        | No records found.                                                             |
| `400`      | `GC055`    | `CORE_REQUEST_VALIDATION_FAILURE`   | Core request validation failure.                                              |
| `404`      | `GC056`    | `INVALID_CONFIG_MAP_KEY`            | Configuration map key not available for `{value}`.                            |
| `501`      | `GC057`    | `FEATURE_NOT_SUPPORTED_BY_CORE`     | The core doesn't support this feature.                                        |
| `400`      | `GC058`    | `INVALID_STATUS_TRANSITION`         | The status transition is invalid.                                             |
| `422`      | `GC059`    | `INVALID_BANK`                      | Invalid bank.                                                                 |
| `422`      | `GC060`    | `TRANSACTION_PROCESSING_INCOMPLETE` | The transaction hasn't finished processing. Retry the request later.          |

#### Connection errors

The following table describes errors related to network connectivity and service availability.

| HTTP error | Error code | Error key                      | Description                                                                                                                     |
| ---------- | ---------- | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------- |
| `504`      | `GC061`    | `REQUEST_TIMEOUT`              | The request timed out.                                                                                                          |
| `502`      | `GC062`    | `BAD_GATEWAY`                  | The gateway server received an invalid response from the upstream service.                                                      |
| `504`      | `GC063`    | `GATEWAY_TIMEOUT`              | Gateway communication lost. Try again.                                                                                          |
| `503`      | `GC064`    | `SERVICE_UNAVAILABLE`          | The required service is unavailable.                                                                                            |
| `503`      | `GC065`    | `CONNECTIVITY_ERROR`           | There is an issue connecting with one or more systems.                                                                          |
| `409`      | `GC066`    | `MAX_UNIQUE_ID_LIMIT_EXCEEDED` | The request exceeded the unique ID limit.                                                                                       |
| `400`      | `GC067`    | `INVALID_ENCODING`             | Invalid encoding in the request.                                                                                                |
| `415`      | `GC068`    | `UNSUPPORTED_MEDIA_TYPE`       | The origin server refuses to service the request because this method on the target resource doesn't support the payload format. |

### Party errors

A party is a person or organization. In a banking context, a party is typically a customer with a product or arrangement in the core banking system. The following table describes party-related errors.

| HTTP error | Error code | Error key                       | Description                                           |
| ---------- | ---------- | ------------------------------- | ----------------------------------------------------- |
| `404`      | `GC101`    | `PARTY_NOT_FOUND`               | Party with specified ID doesn't exist.                |
| `409`      | `GC102`    | `PARTY_ALREADY_EXISTS`          | Party with specified ID already exists.               |
| `404`      | `GC103`    | `NO_ACCOUNT(S)_FOUND_FOR_PARTY` | No accounts exist for the specified party.            |
| `404`      | `GC104`    | `NO_BALANCE(S)_FOUND_FOR_PARTY` | No balances exist for the specified party.            |
| `404`      | `GC105`    | `PARTY_NOT_FOUND`               | Party or parties with the specified name don't exist. |

### Account errors

The following table describes errors related to account operations.

| HTTP error | Error code | Error key                             | Description                                                      |
| ---------- | ---------- | ------------------------------------- | ---------------------------------------------------------------- |
| `404`      | `GC201`    | `ACCOUNT_NOT_FOUND`                   | Account doesn't exist for ID {}.                                 |
| `409`      | `GC202`    | `ACCOUNT_ALREADY_EXISTS`              | Account with specified ID already exists.                        |
| `404`      | `GC203`    | `NO_TRANSACTION(S)_FOUND_FOR_ACCOUNT` | No transactions exist for the specified account.                 |
| `409`      | `GC204`    | `ACCOUNT_BALANCE_NOT_ZERO`            | Account closure can't proceed if the account balance isn't zero. |
| `400`      | `GC205`    | `ACCOUNT_ALREADY_CLOSED`              | Account is already in the closed state for ID {}.                |
| `404`      | `GC302`    | `ACCOUNT_NOT_FOUND`                   | Account doesn't exist for ID {}.                                 |

### Transaction errors

The following table describes errors related to transaction operations.

| HTTP error | Error code | Error key                             | Description                                              |
| ---------- | ---------- | ------------------------------------- | -------------------------------------------------------- |
| `404`      | `GC203`    | `NO_TRANSACTION(S)_FOUND_FOR_ACCOUNT` | No transactions exist for the specified account.         |
| `404`      | `GC301`    | `NO_TRANSACTION(S)_FOUND_FOR_ACCOUNT` | No transactions exist for the specified account.         |
| `404`      | `GC303`    | `TRANSACTION_NOT_FOUND`               | Transaction with specified ID doesn't exist.             |
| `400`      | `GC304`    | `DATE_INTERVAL_TOO_LARGE`             | The booking date interval for transactions is too large. |

### Payment errors

The following table describes errors related to payment operations.

| HTTP error | Error code | Error key                                       | Description                                                                   |
| ---------- | ---------- | ----------------------------------------------- | ----------------------------------------------------------------------------- |
| `400`      | `GC401`    | `INVALID_PAYEE_OR_PAYER_ACCOUNT`                | The request specifies an invalid payee or payer account.                      |
| `422`      | `GC402`    | `DEBTOR_OR_CREDITOR_ACCOUNT_NOT_FOUND`          | Debtor/Creditor account not found.                                            |
| `422`      | `GC403`    | `PAYMENT_REFERENCE_ALREADY_EXISTS`              | Payment reference already exists.                                             |
| `422`      | `GC404`    | `DEBTOR_OR_CREDITOR_ACCOUNT_BLOCKED`            | The FI blocked the debtor/creditor account.                                   |
| `422`      | `GC405`    | `PAYMENT_REJECTED_BY_BANK`                      | The bank or clearing network rejected the payment.                            |
| `422`      | `GC406`    | `TRANSACTION_AMOUNT_EXCEEDS_MAX`                | The transaction amount exceeds the allowed limit.                             |
| `422`      | `GC407`    | `TRANSACTION_AMOUNT_BELOW_MIN`                  | The transaction amount is below the minimum limit.                            |
| `422`      | `GC408`    | `TRANSACTION_NOT_SUPPORTED_FOR_ACCOUNT`         | The debtor/creditor account doesn't support this transaction.                 |
| `422`      | `GC409`    | `INSUFFICIENT_BALANCE`                          | Insufficient balance in debtor's account.                                     |
| `422`      | `GC410`    | `INVALID_SCHEDULE_DATE`                         | The system can't schedule the transaction for the given date.                 |
| `422`      | `GC411`    | `PAYMENT_LIMIT_24H_EXCEEDED`                    | Maximum payment amount by client in 24 hours limit reached.                   |
| `422`      | `GC412`    | `PAYMENT_LIMIT_DAILY_EXCEEDED`                  | Maximum payment amount by client per day limit reached.                       |
| `422`      | `GC413`    | `PAYMENT_LIMIT_WEEKLY_EXCEEDED`                 | Maximum payment amount by client per week limit reached.                      |
| `422`      | `GC414`    | `PAYMENT_LIMIT_MONTHLY_EXCEEDED`                | Maximum payment amount by client per month limit reached.                     |
| `422`      | `GC415`    | `TECHNICAL_DIFFICULTY`                          | Encountered a technical difficulty.                                           |
| `422`      | `GC416`    | `DUPLICATE_IDEMPOTENT_REQUEST_KEY`              | Duplicate idempotent request key.                                             |
| `422`      | `GC417`    | `DEBTOR_OR_CREDITOR_ACCOUNT_CLOSED`             | The debtor/creditor account is in a closed state.                             |
| `422`      | `GC418`    | `DUPLICATE_BATCH_REFERENCE`                     | Duplicate batch reference. A batch with this reference already exists.        |
| `422`      | `GC419`    | `CONFIGURATION_ERROR`                           | Configuration issue. Contact support.                                         |
| `422`      | `GC420`    | `ACH_COMPANY_ID_NOT_CONFIGURED`                 | No ACH company ID configuration found for the specified client.               |
| `422`      | `GC421`    | `INVALID_BATCH_REFERENCE`                       | Invalid batch reference. No batch exists with the specified batch\_reference. |
| `422`      | `GC422`    | `INVALID_BATCH_STATUS`                          | Invalid batch status. The system can't accept the batch in its current state. |
| `422`      | `GC423`    | `BATCH_CONFIRMATION_INVALID_STATUS`             | Unable to confirm the batch due to invalid batch status.                      |
| `422`      | `GC424`    | `BATCH_CONFIRMATION_PARTIAL_VALIDATION_FAILURE` | Unable to confirm the batch due to partial validation failure.                |
| `422`      | `GC425`    | `PAYMENT_NOT_CANCELLABLE`                       | You can't cancel this payment.                                                |
| `404`      | `GC426`    | `PAYMENT_NOT_FOUND`                             | No payment exists for the specified ID.                                       |
| `400`      | `GC427`    | `INVALID_PAYMENT_ID`                            | Invalid payment ID.                                                           |
| `500`      | `GC428`    | `SYSTEM_ERROR`                                  | System error. Contact support.                                                |
| `422`      | `GC429`    | `BATCH_ALREADY_CANCELLED`                       | Unable to cancel the batch. The system already cancelled it.                  |
| `422`      | `GC430`    | `BATCH_ALREADY_REJECTED`                        | Unable to cancel the batch. The system already rejected it.                   |
| `404`      | `GC431`    | `BANK_CODE_NOT_FOUND`                           | Couldn't retrieve details based on requested bank code.                       |
| `422`      | `GC432`    | `INVALID_BANK_CODE_TYPE`                        | The bank code type is invalid.                                                |
| `400`      | `GC433`    | `INVALID_HEADER_VALUE`                          | The request header contains an invalid value.                                 |
| `422`      | `GC434`    | `PAYMENT_NOT_MODIFIABLE`                        | You can't modify this payment.                                                |
| `400`      | `GC435`    | `INVALID_CURRENCY`                              | Currency error.                                                               |
| `400`      | `GC436`    | `INVALID_AMOUNT`                                | Invalid amount.                                                               |
| `422`      | `GC437`    | `PREFUNDED_PAYMENTS_NOT_ALLOWED`                | The system doesn't allow prefunded payments.                                  |
| `422`      | `GC438`    | `INVALID_TRANSFER_TYPE`                         | Invalid transfer type.                                                        |
| `400`      | `GC439`    | `MANDATORY_PARAMETER_MISSING`                   | The request is missing a mandatory parameter.                                 |
| `400`      | `GC440`    | `CORE_PAYMENT_PROCESSING_ERROR`                 | Core payment processing error.                                                |
| `422`      | `GC441`    | `PAYMENT_PROCESSING_CONSTRAINT_VIOLATION`       | Payment processing constraint violation.                                      |
| `422`      | `GC442`    | `INVALID_BRANCH_CONFIGURATION`                  | Invalid branch configuration.                                                 |
| `400`      | `GC443`    | `INVALID_PAYMENT_MODE`                          | Invalid payment mode.                                                         |
| `422`      | `GC444`    | `SEPA_INSTANT_PAYMENT_CONSTRAINT_VIOLATION`     | SEPA Instant payment constraint violation.                                    |
| `422`      | `GC445`    | `MNEMONIC_LENGTH_EXCEEDED`                      | ACTRF reference field exceeds the T24 mnemonic length limit.                  |
| `404`      | `GC446`    | `PAYMENT_TYPE_NOT_EXIST`                        | Payment type doesn't exist.                                                   |

### Loan errors

The following table describes errors related to loan operations.

| HTTP error | Error code | Error key                                        | Description                                        |
| ---------- | ---------- | ------------------------------------------------ | -------------------------------------------------- |
| `404`      | `GC501`    | `INVALID_LOAN_ACCOUNT_ID`                        | Loan account doesn't exist for the specified ID.   |
|            | `GC502`    | `INVALID_GRACE_PERIOD`                           | Invalid grace period value.                        |
|            | `GC503`    | `RESCHEDULED_REPAYMENT_BEFORE_DISBURSEMENT_DATE` | Repayment period is prior to account opening date. |
| `400`      | `GC504`    | `INVALID_LOAN_PAYMENT_ID`                        | Invalid loan payment ID.                           |
| `400`      | `GC505`    | `INVALID_DATE`                                   | The system doesn't allow backdated entries.        |
| `400`      | `GC506`    | `INVALID_ACCOUNT_STATE`                          | The loan account is in an inactive state.          |

### Card errors

The following table describes errors related to card operations.

| HTTP error | Error code | Error key                                 | Description                                                                           |
| ---------- | ---------- | ----------------------------------------- | ------------------------------------------------------------------------------------- |
| `404`      | `GC601`    | `INVALID_CARD_NUMBER`                     | The specified card number doesn't exist.                                              |
| `422`      | `GC602`    | `INVALID_FINANCIAL_INSTITUTION`           | Invalid financial institution. The system doesn't recognize the provided institution. |
| `422`      | `GC603`    | `PARAMETERS_NOT_SET`                      | The effective date doesn't have parameters set.                                       |
| `422`      | `GC604`    | `INVALID_OPERATOR`                        | Invalid operator. The system doesn't recognize the provided operator.                 |
| `400`      | `GC605`    | `MANDATORY_FIELD_MISSING`                 | At least one of DDA, SAV, or CRC is mandatory.                                        |
| `404`      | `GC606`    | `ISSUER_BANK_ID_NOT_FOUND`                | Issuer Bank ID doesn't exist.                                                         |
| `422`      | `GC607`    | `INVALID_CARD_COMBINATION`                | Invalid combination for card number.                                                  |
| `422`      | `GC608`    | `INVALID_PREFIX_OR_ISSUER`                | Invalid prefix or issuer bank ID.                                                     |
| `422`      | `GC609`    | `CUSTOMER_NOT_FOUND`                      | Customer not found.                                                                   |
| `422`      | `GC610`    | `GENERATION_ERROR`                        | Random card number generation error.                                                  |
| `404`      | `GC611`    | `ACCOUNT_NOT_FOUND`                       | Account number doesn't exist.                                                         |
| `422`      | `GC612`    | `DATABASE_ERROR`                          | A database error occurred. Unable to process the request.                             |
| `422`      | `GC613`    | `MODULE_LOAD_FAILURE`                     | Module load failure encountered. Unable to process the request.                       |
| `422`      | `GC614`    | `NO_PRIMARY_CUSTOMER`                     | Account has no primary customers.                                                     |
| `422`      | `GC615`    | `RELATIONSHIP_REQUIRED`                   | The operation requires a relationship.                                                |
| `409`      | `GC616`    | `DUPLICATE_RECORD`                        | Duplicate record found.                                                               |
| `422`      | `GC617`    | `REQUEST_BLOCKED`                         | Request blocked.                                                                      |
| `403`      | `GC618`    | `SIGNATURE_EXPIRED`                       | The signature expired.                                                                |
| `400`      | `GC619`    | `CARD_NOT_ELIGIBLE`                       | Card not eligible.                                                                    |
| `400`      | `GC620`    | `UNSUPPORTED_WALLET_PROVIDER`             | The system doesn't support the specified wallet provider.                             |
| `400`      | `GC621`    | `INVALID_ACTIVATION_FLAG`                 | Invalid activation flag.                                                              |
| `422`      | `GC622`    | `CARD_AUTHORIZATION_CONSTRAINT_VIOLATION` | Card authorization constraint violation.                                              |
| `422`      | `GC623`    | `CARD_TOKEN_OPERATION_FAILED`             | Card token operation failed.                                                          |
| `422`      | `GC624`    | `CARD_ELIGIBILITY_VERIFICATION_FAILED`    | Card eligibility verification failed.                                                 |

### Servicing consent errors

The following table describes errors related to servicing consent operations.

| HTTP error | Error code | Error key                     | Description                                                          |
| ---------- | ---------- | ----------------------------- | -------------------------------------------------------------------- |
| `400`      | `GC701`    | `NO_CONSENT_SCOPE`            | The request doesn't identify the scope of the consent.               |
| `400`      | `GC702`    | `CONSENT_ALREADY_FINALIZED`   | The consent already reached a final state and can't accept updates.  |
| `400`      | `GC703`    | `PAYMENT_TYPE_MISSING`        | PIS consent requires a payment type.                                 |
| `404`      | `GC704`    | `INVALID_CONSENT`             | Consent not found.                                                   |
| `401`      | `GC705`    | `INVALID_OR_MISSING_HEADER`   | The request header contains a missing or invalid data sharing token. |
| `401`      | `GC706`    | `CONSENT_PAYMENT_NOT_FOUND`   | Payment consent not found.                                           |
| `401`      | `GC707`    | `CONSENT_PAYMENT_ID_MISMATCH` | Consent payment ID mismatch.                                         |
| `401`      | `GC708`    | `CONSENT_SCHEME_MISMATCH`     | Consent scheme mismatch.                                             |

## Error responses

When an API request fails due to request or server errors, the API returns an error response message in JSON format.

### Format

Error responses use the following format:

```json theme={"system"}
[
  {
    "errorCode": "<error code goes here>",
    "errorMessages": [
      {
        "gc": "<grand central error message goes here>",
        "core": "<core error message goes here>"
      },
      {
        "gc": "<grand central error message goes here>",
        "core": "<core error message goes here>"
      }
    ]
  }
]
```

### Examples

The following example shows an error response that includes core messages:

```json theme={"system"}
[
  {
    "errorCode": "GC001",
    "errorMessages": [
      {
        "gc": "gc error message1",
        "core": "core error message1"
      }
    ]
  },
  {
    "errorCode": "GC002",
    "errorMessages": [
      {
        "gc": "gc error message2",
        "core": "core error message2"
      }
    ]
  }
]
```

The following example shows an error response that doesn't include core messages:

```json theme={"system"}
[
  {
    "errorCode": "GC005",
    "errorMessages": [
      {
        "gc": "shortName may only be 255 characters long"
      },
      {
        "gc": "dateOfBirth 1973-0131234-21324 is an invalid date"
      },
      {
        "gc": "lastName may only be 255 characters long"
      }
    ]
  }
]
```

## Error mapping

The following tables show how vendor error codes map to Grand Central error codes.

Connectors resolve vendor error codes using properties in `microprofile-config.properties`. When a connector SDK ships a `DEFAULT` property (for example `DEFAULT=GC055`), any core error code without an explicit mapping resolves to that Grand Central code instead of the platform default `GC028`. Flow-prefixed keys (such as `party_100.12003`) take precedence over bare core codes when the connector sets a `flow` exchange property.

### Alacriti to Grand Central

The following table shows how Alacriti error codes map to Grand Central error codes for `gc-alacriti-payment-connector` and `gc-alacriti-batch-payment-connector`.

| Vendor code    | GC code | Implemented connector |
| -------------- | ------- | --------------------- |
| `400`          | `GC055` | Common                |
| `MM-20-280015` | `GC402` | Common                |
| `MM-20-290004` | `GC402` | Common                |
| `MM-20-280019` | `GC402` | Common                |
| `MM-20-280010` | `GC403` | Common                |
| `MM-20-290003` | `GC404` | Common                |
| `MM-20-280014` | `GC404` | Common                |
| `MM-20-280021` | `GC404` | Common                |
| `MM-20-280011` | `GC405` | Common                |
| `MM-20-280208` | `GC405` | Common                |
| `MM-20-280206` | `GC405` | Common                |
| `MM-20-280202` | `GC405` | Common                |
| `MM-20-280203` | `GC405` | Common                |
| `MM-20-280205` | `GC405` | Common                |
| `MM-20-280017` | `GC406` | Common                |
| `MM-20-290006` | `GC406` | Common                |
| `MM-20-280018` | `GC407` | Common                |
| `MM-20-290007` | `GC407` | Common                |
| `MM-20-280023` | `GC408` | Common                |
| `MM-20-280022` | `GC408` | Common                |
| `MM-20-280020` | `GC409` | Common                |
| `MM-20-430001` | `GC410` | Common                |
| `MM-20-200061` | `GC411` | Common                |
| `MM-20-200062` | `GC412` | Common                |
| `MM-20-200058` | `GC412` | Common                |
| `MM-20-200064` | `GC413` | Common                |
| `MM-20-200059` | `GC413` | Common                |
| `MM-20-200063` | `GC414` | Common                |
| `MM-20-200060` | `GC414` | Common                |
| `MM-20-280016` | `GC415` | Common                |
| `MM-20-290005` | `GC415` | Common                |
| `MM-10-100027` | `GC416` | Common                |
| `MM-20-290009` | `GC417` | Common                |
| `MM-50-200000` | `GC028` | Common                |
| `MM-50-200004` | `GC028` | Common                |
| `MM-50-200005` | `GC028` | Common                |
| `MM-20-500002` | `GC059` | Common                |
| `MM-20-722015` | `GC418` | Common                |
| `MM-20-100028` | `GC419` | Common                |
| `MM-20-722018` | `GC420` | Common                |
| `MM-10-700031` | `GC025` | Common                |
| `MM-50-200002` | `GC028` | Common                |
| `MM-20-722010` | `GC421` | Common                |
| `MM-20-722014` | `GC422` | Common                |
| `MM-20-722019` | `GC423` | Common                |
| `MM-20-722013` | `GC424` | Common                |
| `MM-10-510001` | `GC055` | Common                |
| `MM-10-510002` | `GC055` | Common                |
| `MM-10-510003` | `GC425` | Common                |
| `MM-10-280703` | `GC426` | Common                |
| `MM-20-280009` | `GC427` | Common                |
| `MM-50-200006` | `GC428` | Common                |
| `MM-10-610280` | `GC425` | Common                |
| `MM-20-722020` | `GC429` | Common                |
| `MM-20-722023` | `GC430` | Common                |
| `MM-20-300002` | `GC427` | Common                |
| `MM-20-270004` | `GC054` | Common                |
| `MM-20-722027` | `GC434` | Common                |
| `MM-10-700032` | `GC025` | Common                |
| `MM-20-350068` | `GC419` | Common                |
| `MM-20-350070` | `GC055` | Common                |
| `MM-20-350071` | `GC055` | Common                |

### OBPM to Grand Central

The following table shows how OBPM error codes map to Grand Central error codes for `gc-obpm-payment-connector`, `gc-obpm-direct-debit-mandate-connector`, and `gc-obpm-batch-payment-connector`.

| Vendor code     | GC code | Implemented connector |
| --------------- | ------- | --------------------- |
| `ST-VALS-002`   | `GC201` | Common                |
| `AC-LNK-006`    | `GC201` | Common                |
| `AC-MAN02`      | `GC302` | Common                |
| `AC-OTHR-001`   | `GC303` | Common                |
| `CL-ADC-007`    | `GC501` | Common                |
| `CL-INST-01`    | `GC501` | Common                |
| `PC-ACC-02`     | `GC431` | Common                |
| `PG-CC-02`      | `GC432` | Common                |
| `GW-ROUT0009`   | `GC433` | Common                |
| `GW-ROUT0008`   | `GC004` | Common                |
| `PG-CC-01`      | `GC025` | Common                |
| `PA-HOST-01`    | `GC433` | Common                |
| `PM-VALS-54`    | `GC055` | Common                |
| `PX-SV-029`     | `GC055` | Common                |
| `PA-TXP-003`    | `GC055` | Common                |
| `INVALID-003`   | `GC055` | Common                |
| `PM-SVEX-002`   | `GC025` | Common                |
| `MAND-001`      | `GC439` | Common                |
| `PM-IBAN-002`   | `GC445` | Common                |
| `PB-INST-002`   | `GC055` | Common                |
| `PB-INST-001`   | `GC055` | Common                |
| `PM-VALS-51`    | `GC437` | Common                |
| `INVALID-001`   | `GC055` | Common                |
| `PB-TXP-054`    | `GC436` | Common                |
| `PX-PROC-040`   | `GC438` | Common                |
| `PM-VALS-52`    | `GC055` | Common                |
| `PX-SV-030`     | `GC436` | Common                |
| `PB-TXP-053`    | `GC055` | Common                |
| `PB-TXP-008`    | `GC436` | Common                |
| `PB-TXP-009`    | `GC436` | Common                |
| `PQ-FV-09`      | `GC055` | Common                |
| `SYSERROR`      | `GC055` | Common                |
| `CLOSE-01`      | `GC425` | Common                |
| `PQ-TR-06`      | `GC425` | Common                |
| `PX-PROC-036`   | `GC055` | Common                |
| `PS-STD-14`     | `GC055` | Common                |
| `ST-MAND-001`   | `GC055` | Common                |
| `PS-STD-06`     | `GC055` | Common                |
| `PS-STD-27`     | `GC055` | Common                |
| `PS-STD-01`     | `GC055` | Common                |
| `PS-STD-02`     | `GC055` | Common                |
| `PS-FQ-001`     | `GC055` | Common                |
| `PX-VALS-71`    | `GC055` | Common                |
| `PX-SV-016`     | `GC440` | Common                |
| `PX-PROC-059`   | `GC441` | Common                |
| `PX-SV-017`     | `GC440` | Common                |
| `PB-TXP-161`    | `GC055` | Common                |
| `PX-PROC-046`   | `GC055` | Common                |
| `PM-VALS-061`   | `GC055` | Common                |
| `PC-DD-23`      | `GC054` | Common                |
| `PM-TXP-201`    | `GC054` | Common                |
| `PA-TXP-119`    | `GC439` | Common                |
| `PA-TXP-071`    | `GC055` | Common                |
| `PA-TXP-008`    | `GC436` | Common                |
| `CY-9000`       | `GC440` | Common                |
| `PA-TXP-035`    | `GC439` | Common                |
| `PA-TXP-009`    | `GC436` | Common                |
| `IS-IBAN-003`   | `GC401` | Common                |
| `PY-TXP-119`    | `GC439` | Common                |
| `PY-TXP-011`    | `GC611` | Common                |
| `PS-TXP-10`     | `GC439` | Common                |
| `PS-TXP-09`     | `GC439` | Common                |
| `PY-TXP-130`    | `GC436` | Common                |
| `PY-TXP-009`    | `GC436` | Common                |
| `PA-ACC-01`     | `GC401` | Common                |
| `PA-TXP-011`    | `GC402` | Common                |
| `PA-BR-03`      | `GC442` | Common                |
| `PM-CBR-24`     | `GC054` | Common                |
| `PM-CC-01`      | `GC055` | Common                |
| `PM-SEPD-002`   | `GC054` | Common                |
| `PM-SEPD-001`   | `GC439` | Common                |
| `PA-NT-03`      | `GC439` | Common                |
| `PM-COM-21`     | `GC439` | Common                |
| `PM-COM-23`     | `GC439` | Common                |
| `PM-COM-24`     | `GC439` | Common                |
| `PA-NT-01`      | `GC055` | Common                |
| `PM-COM-26`     | `GC055` | Common                |
| `PM-COM-27`     | `GC055` | Common                |
| `PM-COM-25`     | `GC059` | Common                |
| `PA-PRC-01`     | `GC440` | Common                |
| `PA-EXR-01`     | `GC440` | Common                |
| `PA-INST-001`   | `GC435` | Common                |
| `PC-QMC-01`     | `GC439` | Common                |
| `PC-QMC-02`     | `GC439` | Common                |
| `PC-QMC-03`     | `GC439` | Common                |
| `PF-BR-11`      | `GC402` | Common                |
| `PF-BR-15`      | `GC444` | Common                |
| `PF-TXP-008`    | `GC436` | Common                |
| `PF-TXP-009`    | `GC436` | Common                |
| `PA-BR-04`      | `GC055` | Common                |
| `PF-BR-13`      | `GC402` | Common                |
| `PF-BR-17`      | `GC442` | Common                |
| `ST-SAVE-004`   | `GC055` | Common                |
| `CL-PMTV01`     | `GC439` | Common                |
| `CL-PMTV02`     | `GC402` | Common                |
| `CL-PMTV15`     | `GC435` | Common                |
| `CL-PMTV22`     | `GC407` | Common                |
| `CL-PMTV23`     | `GC407` | Common                |
| `CL-PMTV30`     | `GC406` | Common                |
| `CL-PMTV32`     | `GC406` | Common                |
| `CL-PMTV34`     | `GC410` | Common                |
| `CL-PMTV37`     | `GC407` | Common                |
| `CL-PMNT31`     | `GC410` | Common                |
| `CL-PMNT52`     | `GC407` | Common                |
| `CL-PMNT60`     | `GC407` | Common                |
| `CL-PMNT456`    | `GC402` | Common                |
| `CL-INVBR`      | `GC402` | Common                |
| `CL-BRCUST`     | `GC439` | Common                |
| `IS-ACC01`      | `GC402` | Common                |
| `CF-20005`      | `GC435` | Common                |
| `GW-AUTHUSER`   | `GC001` | Common                |
| `ST-OTHR-001`   | `GC055` | Common                |
| `INVALID-001_1` | `GC055` | Common                |

### FIS Cardbase to Grand Central

The following table shows how FIS Cardbase error codes map to Grand Central error codes for `gc-fis-cardbase-connector`.

| Vendor code | GC code | Implemented connector |
| ----------- | ------- | --------------------- |
| `CB00001`   | `GC601` | Common                |
| `CB00002`   | `GC612` | Common                |
| `CB00003`   | `GC602` | Common                |
| `CB00020`   | `GC603` | Common                |
| `CB00022`   | `GC604` | Common                |
| `CB00027`   | `GC055` | Common                |
| `CB00030`   | `GC605` | Common                |
| `CB00031`   | `GC055` | Common                |
| `CB00036`   | `GC055` | Common                |
| `CB00039`   | `GC055` | Common                |
| `CB00040`   | `GC055` | Common                |
| `CB00041`   | `GC055` | Common                |
| `CB00042`   | `GC055` | Common                |
| `CB00043`   | `GC055` | Common                |
| `CB00045`   | `GC055` | Common                |
| `CB00046`   | `GC055` | Common                |
| `CB00059`   | `GC055` | Common                |
| `CB00078`   | `GC616` | Common                |
| `CB00084`   | `GC607` | Common                |
| `CB00085`   | `GC607` | Common                |
| `CB00160`   | `GC606` | Common                |
| `CB00180`   | `GC055` | Common                |
| `CB01456`   | `GC612` | Common                |
| `CB01457`   | `GC612` | Common                |
| `CB00083`   | `GC602` | Common                |
| `CB00141`   | `GC612` | Common                |
| `CB00144`   | `GC613` | Common                |
| `CB00151`   | `GC612` | Common                |
| `CB00168`   | `GC608` | Common                |
| `CB00175`   | `GC601` | Common                |
| `CB00188`   | `GC610` | Common                |
| `CB00385`   | `GC608` | Common                |
| `CB00099`   | `GC611` | Common                |
| `CB00162`   | `GC055` | Common                |
| `CB00068`   | `GC606` | Common                |
| `CI00214`   | `GC601` | Common                |
| `CI00216`   | `GC614` | Common                |
| `CI00220`   | `GC615` | Common                |
| `CI00224`   | `GC616` | Common                |
| `CI00238`   | `GC609` | Common                |

### Tietoevry to Grand Central

The following table shows how Tietoevry error codes map to Grand Central error codes for `gc-tieto-evry-card-authorization-connector`.

| Vendor code | GC code | Implemented connector |
| ----------- | ------- | --------------------- |
| `CRD-0010`  | `GC601` | Common                |
| `ENC-0010`  | `GC055` | Common                |
| `GEN-0001`  | `GC439` | Common                |
| `10137`     | `GC617` | Common                |
| `10083`     | `GC433` | Common                |
| `10081`     | `GC433` | Common                |
| `1109`      | `GC433` | Common                |
| `118`       | `GC025` | Common                |
| `70`        | `GC025` | Common                |
| `1002`      | `GC433` | Common                |
| `10112`     | `GC618` | Common                |
| `1011`      | `GC433` | Common                |
| `1008`      | `GC619` | Common                |
| `999`       | `GC433` | Common                |
| `115`       | `GC601` | Common                |
| `201`       | `GC505` | Common                |
| `2`         | `GC428` | Common                |
| `55`        | `GC601` | Common                |
| `301`       | `GC622` | Common                |
| `1000`      | `GC065` | Common                |
| `12`        | `GC601` | Common                |
| `1006`      | `GC623` | Common                |
| `133`       | `GC624` | Common                |

### FIS IBS to Grand Central (core banking)

The following table shows how FIS IBS error codes map to Grand Central error codes for core banking connectors (party, deposit, and loan). For card operations, see [FIS Cardbase to Grand Central](#fis-cardbase-to-grand-central).

| FIS code                       | GC code | Implemented connector                  |
| ------------------------------ | ------- | -------------------------------------- |
| `4`                            | `GC055` | Common                                 |
| `100`                          | `GC501` | Common                                 |
| `116`                          | `GC205` | Common                                 |
| `301`                          | `GC101` | Common                                 |
| `428`                          | `GC201` | Common                                 |
| `513`                          | `GC204` | Common                                 |
| `900901`                       | `GC002` | Common                                 |
| `900902`                       | `GC002` | Common                                 |
| `CI00037`                      | `GC055` | Common                                 |
| `CI00070`                      | `GC055` | Common                                 |
| `CI00071`                      | `GC055` | Common                                 |
| `CI00073`                      | `GC055` | Common                                 |
| `CI00074`                      | `GC055` | Common                                 |
| `CI00078`                      | `GC055` | Common                                 |
| `CI00079`                      | `GC055` | Common                                 |
| `CI00080`                      | `GC055` | Common                                 |
| `CI00081`                      | `GC055` | Common                                 |
| `CI00082`                      | `GC055` | Common                                 |
| `CI00083`                      | `GC055` | Common                                 |
| `CI00086`                      | `GC055` | Common                                 |
| `CI00156`                      | `GC055` | Common                                 |
| `CI00157`                      | `GC055` | Common                                 |
| `CI00158`                      | `GC055` | Common                                 |
| `CI00159`                      | `GC101` | Common                                 |
| `CI00181`                      | `GC054` | Common                                 |
| `CI00229`                      | `GC101` | Common                                 |
| `CI00232`                      | `GC201` | Common                                 |
| `CI00292`                      | `GC055` | Common                                 |
| `CI00294`                      | `GC055` | Common                                 |
| `CI00625`                      | `GC055` | Common                                 |
| `CI00626`                      | `GC055` | Common                                 |
| `CI00627`                      | `GC055` | Common                                 |
| `DP08005`                      | `GC006` | Common                                 |
| `LN00008`                      | `GC501` | Common                                 |
| `LN08154`                      | `GC501` | Common                                 |
| `MB09004`                      | `GC055` | Common                                 |
| `MB09005`                      | `GC006` | Common                                 |
| `MB09013`                      | `GC055` | Common                                 |
| `MB90004`                      | `GC055` | Common                                 |
| `DP08005`                      | `GC201` | `gc-fis-party-connector`               |
| `MB09005`                      | `GC201` | `gc-fis-loan-transaction-connector`    |
| `DP08005`                      | `GC201` | `gc-fis-deposit-transaction-connector` |
| `DEPOSITS_DP08005`             | `GC201` | `gc-fis-deposit-connector`             |
| `DEPOSITS_CI00159`             | `GC201` | `gc-fis-deposit-connector`             |
| `DEPOSIT_TRANSACTIONS_DP08005` | `GC201` | `gc-fis-deposit-transaction-connector` |
| `LOAN_TRANSACTIONS_MB09005`    | `GC201` | `gc-fis-loan-transaction-connector`    |

### Jack Henry Symitar to Grand Central

The following table shows how Jack Henry Symitar error codes map to Grand Central error codes.

| Jack Henry Symitar code      | GC code | Implemented connector                    |
| ---------------------------- | ------- | ---------------------------------------- |
| `100.10202`                  | `GC201` | Common                                   |
| `10202`                      | `GC201` | Common                                   |
| `100.10201`                  | `GC201` | Common                                   |
| `10201`                      | `GC201` | Common                                   |
| `1.10`                       | `GC201` | Common                                   |
| `100.12003`                  | `GC204` | Common                                   |
| `12003`                      | `GC204` | Common                                   |
| `100.13039`                  | `GC302` | Common                                   |
| `13039`                      | `GC302` | Common                                   |
| `100.13030`                  | `GC302` | Common                                   |
| `13030`                      | `GC302` | Common                                   |
| `100.100005`                 | `GC202` | Common                                   |
| `100005`                     | `GC202` | Common                                   |
| `100.12003`                  | `GC055` | `gc-symitar-party-connector`             |
| `100.100000`                 | `GC055` | `gc-symitar-party-connector`             |
| `100.10202`                  | `GC101` | `gc-symitar-party-connector`             |
| `100.1020`                   | `GC101` | `gc-symitar-party-connector`             |
| `100.10202`                  | `GC501` | `gc-symitar-loan-transaction-connector`  |
| `10202`                      | `GC501` | `gc-symitar-loan-transaction-connector`  |
| `100.10201`                  | `GC501` | `gc-symitar-loan-transaction-connector`  |
| `10201`                      | `GC501` | `gc-symitar-loan-transaction-connector`  |
| `1.10`                       | `GC501` | `gc-symitar-loan-transaction-connector`  |
| `12003`                      | `GC055` | `gc-symitar-loan-connector`              |
| `100.10201`                  | `GC055` | `gc-symitar-loan-connector`              |
| `10201`                      | `GC501` | `gc-symitar-loan-connector`              |
| `100.10202`                  | `GC501` | `gc-symitar-loan-connector`              |
| `10202`                      | `GC501` | `gc-symitar-loan-connector`              |
| `party_100.10202`            | `GC101` | `gc-symitar-loan-connector`              |
| `party_10202`                | `GC101` | `gc-symitar-loan-connector`              |
| `100.12003`                  | `GC055` | `gc-symitar-deposit-connector`           |
| `12003`                      | `GC055` | `gc-symitar-deposit-connector`           |
| `party_100.10202`            | `GC101` | `gc-symitar-deposit-connector`           |
| `party_10202`                | `GC101` | `gc-symitar-deposit-connector`           |
| `party_100.10201`            | `GC101` | `gc-symitar-party-connector`             |
| `party_10201`                | `GC101` | `gc-symitar-party-connector`             |
| `party_1.24`                 | `GC055` | `gc-symitar-party-connector`             |
| `loan_100.12003`             | `GC055` | `gc-symitar-loan-connector`              |
| `loan_12003`                 | `GC055` | `gc-symitar-loan-connector`              |
| `loan_100.10201`             | `GC501` | `gc-symitar-loan-connector`              |
| `loan_10201`                 | `GC501` | `gc-symitar-loan-connector`              |
| `loan_100.10202`             | `GC501` | `gc-symitar-loan-connector`              |
| `loan_10202`                 | `GC501` | `gc-symitar-loan-connector`              |
| `loanTransactions_100.10202` | `GC501` | `gc-symitar-loan-transactions-connector` |
| `loanTransactions_10202`     | `GC501` | `gc-symitar-loan-transactions-connector` |
| `loanTransactions_100.10201` | `GC501` | `gc-symitar-loan-transactions-connector` |
| `loanTransactions_10201`     | `GC501` | `gc-symitar-loan-transactions-connector` |
| `loanTransactions_1.10`      | `GC501` | `gc-symitar-loan-transactions-connector` |
| `deposit_100.12003`          | `GC055` | `gc-symitar-deposit-connector`           |
| `deposit_12003`              | `GC055` | `gc-symitar-deposit-connector`           |
| `deposit_100.100005`         | `GC055` | `gc-symitar-deposit-connector`           |
| `deposit_100005`             | `GC055` | `gc-symitar-deposit-connector`           |
| `deposit_1.24`               | `GC055` | `gc-symitar-deposit-connector`           |

### Mambu to Grand Central

The following table shows how Mambu error codes map to Grand Central error codes. Connectors that ship `DEFAULT=GC055` map any unmapped core error code to `GC055`.

| Mambu code | GC code | Implemented connector                                                                                              |
| ---------- | ------- | ------------------------------------------------------------------------------------------------------------------ |
| `301`      | `GC101` | Common                                                                                                             |
| `4`        | `GC055` | Common                                                                                                             |
| `428`      | `GC201` | Common                                                                                                             |
| `2102`     | `GC055` | Common                                                                                                             |
| `100`      | `GC501` | Common                                                                                                             |
| `116`      | `GC205` | Common                                                                                                             |
| `513`      | `GC204` | Common                                                                                                             |
| `212`      | `GC303` | Common                                                                                                             |
| `212`      | `GC301` | `gc-mambu-transaction-connector`                                                                                   |
| `4`        | `GC055` | `gc-mambu-payment-connector` (if payee account is invalid, Mambu sends a generic request validation failure error) |
| `428`      | `GC401` | `gc-mambu-payment-connector` (if payer account is invalid)                                                         |
| `2456`     | `GC501` | Common                                                                                                             |

### Temenos Transact to Grand Central

The following table shows how Temenos Transact error codes map to Grand Central error codes for Temenos Transact connectors. Connectors that ship `DEFAULT=GC055` map any unmapped core error code to `GC055`.

| Temenos code                  | GC code | Implemented connector                   |
| ----------------------------- | ------- | --------------------------------------- |
| `E-107281`                    | `GC302` | Common                                  |
| `LOAN_TRANSACTIONS_TGVCP-007` | `GC301` | `gc-temenos-loan-transaction-connector` |
| `TGVCP-007`                   | `GC445` | Common                                  |
| `LOANS_TGVCP-007`             | `GC501` | Common                                  |
| `CLOSE_DEPOSIT_TGVCP-007`     | `GC201` | Common                                  |
| `GET_DEPOSITS_TGVCP-007`      | `GC201` | Common                                  |
| `SIMULATE_DEPOSIT_TGVCP-007`  | `GC054` | Common                                  |

### Fiserv DNA to Grand Central

The following table shows connector-specific Fiserv DNA error code mappings. Connectors that ship `DEFAULT=GC055` map any unmapped core error code to `GC055`.

| Fiserv DNA code               | GC code | Implemented connector                        |
| ----------------------------- | ------- | -------------------------------------------- |
| `2291`                        | `GC025` | Common                                       |
| `party_10001`                 | `GC101` | `gc-fiservdna-party-connector`               |
| `DEPOSIT_TRANSACTIONS_100001` | `GC201` | `gc-fiservdna-deposit-transaction-connector` |
| `getLoan_100001`              | `GC501` | `gc-fiservdna-loan-connector`                |
| `getLoanTransaction_100001`   | `GC501` | `gc-fiservdna-loan-transaction-connector`    |
| `loanBalances_100001`         | `GC501` | `gc-fiservdna-loan-connector`                |
| `loanTransactions_100001`     | `GC201` | `gc-fiservdna-loan-transaction-connector`    |
| `searchParty_6502`            | `GC025` | `gc-fiservdna-party-connector`               |
| `createParty_100001`          | `GC055` | `gc-fiservdna-party-connector`               |
| `getDeposit_100001`           | `GC201` | `gc-fiservdna-deposit-connector`             |
| `depositBalances_1001`        | `GC201` | `gc-fiservdna-deposit-connector`             |
| `closeDeposit_112`            | `GC055` | `gc-fiservdna-deposit-connector`             |
| `closeDeposit_100100`         | `GC055` | `gc-fiservdna-deposit-connector`             |

### Oracle FLEXCUBE to Grand Central

The following table shows how Oracle FLEXCUBE error codes map to Grand Central error codes for FLEXCUBE connectors. Connectors that ship `DEFAULT=GC055` map any unmapped core error code to `GC055`.

| FLEXCUBE code       | GC code | Implemented connector         |
| ------------------- | ------- | ----------------------------- |
| `party_ST-VALS-002` | `GC101` | `gc-flexcube-party-connector` |
| `CL-PMNT31`         | `GC055` | Common                        |
| `CL-PMTV02`         | `GC501` | Common                        |
