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

# 错误码字典

> 企业卡开放接口的错误码全集：通用 11 个、业务 52 个，以及按错误码分支的判定规则。

## 📄 正文

本页是企业卡开放接口的错误码全集：**通用 11 个、业务 52 个**。本页只作速查——每个码的触发条件与请求细节见「出现于」一列所指的指南页。

三条判定规则：

1. **按错误码分支，不要解析 `message`**：`message` 是给人看的，措辞会调整；错误码才是契约。
2. **不要用 HTTP 状态判断成败**：业务失败当前统一返回 HTTP 500，唯一可靠判据是 `code == "SYS_SUCCESS"`。
3. **`SYS_ERROR` 与 `DAPI_SERVICE_UNAVAILABLE` 属结果未知**：动账类接口（划拨、申卡等）须按原幂等键重试或查询对账，不可直接判失败。遇到本页未列出的错误码，按「本次失败」处理即可，不要当作成功。

<Warning>
  批量接口（规则绑定 / 解绑）的错误分两层：**整批级**错误在顶层 `code`；**逐条级**失败原因在 `data.failTargets[].errorCode`，与顶层共用同一套码表。详见 [绑定与解绑](../how-to-use/binding-and-unbinding)。
</Warning>

## 通用错误码

与具体接口无关、任何接口都可能返回。响应体同为标准信封 `{ code, message, data }`。

### 响应信封

| 错误码           | HTTP | 说明                    |
| ------------- | ---- | --------------------- |
| `SYS_SUCCESS` | 200  | 成功                    |
| `SYS_ERROR`   | 500  | 系统错误（结果未知，动账类按原幂等键重试） |

### 鉴权与网关校验

| 错误码                        | HTTP | 说明                           |
| -------------------------- | ---- | ---------------------------- |
| `DAPI_API_KEY_EMPTY`       | 401  | API Key 缺失或无效                |
| `DAPI_TIMESTAMP_EXPIRED`   | 401  | 时间戳超窗                        |
| `DAPI_NONCE_ILLEGAL`       | 401  | nonce 非法                     |
| `DAPI_NONCE_DUPLICATE`     | 401  | nonce 重复                     |
| `DAPI_SIGNATURE_ERROR`     | 401  | 验签失败                         |
| `DAPI_IP_NOT_ALLOWED`      | 401  | IP 不在白名单                     |
| `DAPI_PERMISSION_DENIED`   | 401  | 无权访问                         |
| `DAPI_PARAM_INVALID`       | 400  | 参数错误（含「五个控制组一个都没配」等结构性缺参）    |
| `DAPI_SERVICE_UNAVAILABLE` | 500  | 下游不可用（结果未知，同 `SYS_ERROR` 处理） |

## 业务错误码

| 错误码                              | 说明                                      | 出现于                                          |
| -------------------------------- | --------------------------------------- | -------------------------------------------- |
| `APPLY_DUPLICATE`                | 申请重复（幂等键已存在）                            | 组织申请、员工申请、申卡、虚转实                             |
| `APPLY_REJECTED_USE_RESUBMIT`    | 申请已被拒，改用重新提交接口                          | 组织申请、员工申请                                    |
| `COMPANY_REGISTRATION_DUPLICATE` | 公司注册号重复                                 | 组织申请                                         |
| `CURRENCY_NOT_ALLOWED`           | 币种不在允许列表                                | 组织申请、开通 VA                                   |
| `EMAIL_DUPLICATE`                | 邮箱重复                                    | 组织申请、员工申请                                    |
| `APPLY_NOT_FOUND`                | 申请不存在                                   | 申请查询与重提（组织、员工）、卡申请查询                         |
| `STATUS_CONFLICT`                | 状态冲突                                    | 重新提交、限制状态变更（组织、员工）                           |
| `ORGANIZATION_INVALID`           | 组织不存在 / 非 ACTIVE / 不属本入驻方               | 组织与其下资源的多数接口                                 |
| `COUNTRY_SANCTIONED`             | 国家受制裁                                   | 员工申请、员工地址更新、虚转实                              |
| `PHONE_DUPLICATE`                | 手机号重复                                   | 员工申请                                         |
| `CUSTOMER_INVALID`               | 员工不存在 / 非 ACTIVE / 不属所传组织               | 员工查询、四类信息更新、限制状态                             |
| `KYC_IN_REVIEW`                  | KYC 审核中，暂不可更新                           | 员工信息更新                                       |
| `CARD_LIMIT_EXCEEDED`            | 超开卡上限                                   | 申卡                                           |
| `CARD_PROFILE_INVALID`           | 卡型不可用                                   | 申卡                                           |
| `CARD_PROFILE_SUBJECT_MISMATCH`  | 卡型与主体类型不匹配                              | 申卡                                           |
| `CARD_RULE_REQUIRED`             | 规则必填（该卡型要求带限额规则）                        | 申卡                                           |
| `CARD_RULE_INVALID`              | 规则不存在、不属本公司、或非 ACTIVE（三者统一一码，避免探测他公司规则） | 申卡                                           |
| `CARD_RULE_DUPLICATE`            | 该主体已绑定同一规则                              | 申卡、规则绑定                                      |
| `CARD_RULE_CURRENCY_NOT_MATCH`   | 规则币种与卡可核销币种无交集                          | 申卡、规则绑定                                      |
| `CARD_RULE_LIMIT_EXCEEDED`       | 该主体已绑规则数超上限（5 条）                        | 申卡、规则绑定                                      |
| `SUBJECT_INVALID`                | 主体不存在、非 ACTIVE、或不属所传组织                  | 资金与限额域的主体校验（含批量接口的逐条级）                       |
| `SUBJECT_TYPE_NOT_ALLOWED`       | 该槽位不接受此主体类型                             | 资金与限额域（如资金域传 `CUSTOMER`、限额域传 `ORGANIZATION`） |
| `CARD_INVALID`                   | 卡无效                                     | 卡域多数接口                                       |
| `CARD_NOT_DEDICATED`             | 非独立余额卡                                  | 开通 VA                                        |
| `UNSUPPORTED_CURRENCY`           | 币种不支持                                   | 开通 VA、资金域、余额告警、有效限额查询                        |
| `PCI_NOT_CERTIFIED`              | 无卡敏感信息权限                                | 获取卡敏感信息                                      |
| `CARD_CONVERT_IN_PROGRESS`       | 虚转实在途                                   | 虚转实                                          |
| `CARD_NOT_VIRTUAL`               | 非虚拟卡                                    | 虚转实                                          |
| `LIMIT_PHYSICAL_EXCEEDED`        | 超实体卡上限                                  | 虚转实                                          |
| `SHIPPING_ADDRESS_REQUIRED`      | 缺寄送地址                                   | 虚转实                                          |
| `SHIPPING_CONTACT_REQUIRED`      | 缺寄送联系手机号                                | 虚转实                                          |
| `CARD_NOT_SHIPPED`               | 卡未寄出                                    | 实体卡激活                                        |
| `PIN_CARD_NOT_ACTIVATED`         | 卡未激活                                    | 设置 PIN                                       |
| `PIN_CARD_STATE_INVALID`         | 卡状态不允许设 PIN                             | 设置 PIN                                       |
| `PIN_DECRYPT_FAILED`             | PIN 密文解密失败                              | 设置 PIN                                       |
| `PIN_RULE_VIOLATION`             | PIN 不合规                                 | 设置 PIN                                       |
| `PIN_VERIFY_FAILED`              | 核身要素不符                                  | 设置 PIN                                       |
| `CURRENCY_MISMATCH`              | 划拨双方币种不一致                               | 资金划拨                                         |
| `INSUFFICIENT_FUNDS`             | 余额不足                                    | 资金划拨                                         |
| `SUBJECT_RESTRICTED`             | 主体受限（冻结 / 受限状态）                         | 资金划拨                                         |
| `TRANSFER_DUPLICATE`             | 划拨重复（幂等键已存在）                            | 资金划拨                                         |
| `TRANSFER_NOT_FOUND`             | 划拨不存在                                   | 划拨查询                                         |
| `BALANCE_ALERT_CURRENCY_NO_POOL` | 该币种未开资金池                                | 余额告警设置                                       |
| `STATEMENT_NOT_FOUND`            | 账单不存在                                   | 账单详情                                         |
| `VELOCITY_CURRENCY_INVALID`      | 金额限额组的币种不合法或重复                          | 创建 / 更新限额规则                                  |
| `VELOCITY_LIMIT_VALUE_INVALID`   | 限额值不合法（负数、格式错、精度超限，或长周期小于短周期）           | 创建 / 更新限额规则                                  |
| `VELOCITY_LIST_CONTROL_INVALID`  | 名单控制组不合法（`filterType` 非法、清单为空、清单元素格式错）  | 创建 / 更新限额规则                                  |
| `VELOCITY_RULE_NOT_FOUND`        | 规则不存在，或不属所传组织 / 本入驻方                    | 规则查询、更新、状态变更、绑定、解绑、已绑主体查询                    |
| `VELOCITY_RULE_STATUS_INVALID`   | 规则状态不允许该操作                              | 规则更新、状态变更、绑定                                 |
| `VELOCITY_RULE_VERSION_CONFLICT` | `ruleVersion` 与服务端不一致（并发修改），重新查询后重试     | 规则更新、状态变更                                    |
| `VELOCITY_BINDING_NOT_FOUND`     | 该主体未绑定此规则（逐条级）                          | 规则解绑                                         |
| `CARD_3DS_CHALLENGE_NOT_FOUND`   | 挑战不存在                                   | 3DS 挑战确认                                     |

## 下一步

* 批量绑定 / 解绑的两层错误结构与逐条失败处理：[绑定与解绑](../how-to-use/binding-and-unbinding)
* 鉴权头与签名规则（`DAPI_*` 码的来源）：[前置准备](../getting-started/first-steps)
* 申请被拒后的重提路径：[公司入驻](../how-to-use/company-onboarding) 与 [员工入驻](../how-to-use/employee-onboarding)
