📄 正文
一张卡发行后,需要在整个生命周期中持续管理:持卡人可能要临时冻结卡片、丢卡后注销、收到实体卡后激活,或在忘记 PIN 时重置。无论操作来自后台运营人员,还是终端用户在接入机构应用内自行发起,您都可以通过同一套/open-api/card/v1/ 接口,用 cardId 定位并管理对应卡片。
作为持牌、自有 BIN 的发卡机构,DCS 在底层完成与卡组织、发卡处理器之间的状态同步,您只需关心业务语义:这张卡现在是什么状态、允许做什么操作。
前置条件:您需要先成功开卡并拿到 cardId。如果还不清楚如何申请,请先阅读开卡。
核心概念:卡状态机
DCS 用status 字段表达卡的生命周期阶段,所有管理操作本质上都是在驱动这台状态机。
冻结(FROZEN)与阻止(BLOCKED)的区别:FROZEN是接入机构掌握的可逆开关;BLOCKED是发卡行/风控侧出于合规或安全原因施加的限制,需 DCS 介入才能解除。两者都不是终态,只有INVALID是终态。
卡状态原因(statusReason)
当卡处于FROZEN / BLOCKED / INVALID 时,可通过卡详情接口返回的 statusReason 进一步判断变更原因,用于向持卡人解释或决定后续动作。
操作一览
下列接口均为POST(除查询类外),统一在 /open-api/card/v1/ 下;鉴权头、签名与响应结构见鉴权指南。
注:上表多数操作在/open-api/card/v1/下;换卡属卡订单域/open-api/card-order/v1/replace,详见下文换卡(补发)。
操作类调用通用时序
冻结/解冻、注销等操作卡接口遵循同一调用时序:接入机构收到持卡人请求 → 调对应接口 → 返回结果。关于响应结构:所有接口返回统一结构{ code, message, messageDetail, data }。code标识业务结果、message/messageDetail为提示文案(messageDetail可携带可展示给终端用户的标题、图标、跳转链接)、data为业务数据。code 的成功取值与完整错误码字典请见鉴权指南。
查询卡详情
返回卡状态、
statusReason、卡类型、panFirst6(卡号前 6 位)、panLast4(卡号后 4 位)等信息,不含完整卡号、CVV 等敏感信息(敏感信息见下文「获取卡敏感信息」)。
冻结 / 解冻
冻结与解冻是同一个接口,通过freeze 布尔值切换方向——这是本页最容易踩坑的地方,请注意不要把它当成两个接口。
请求示例(冻结):freezeReason何时必填:仅冻结(freeze=true)时必填;解冻(freeze=false)时服务端不读取该字段,省略或传入都会被忽略。 在单自然日对同一张卡频繁解冻可能被限制,此时接口返回DAPI_CARD_UNFREEZE_DAILY_LIMIT_EXCEEDED,次日重试即可。
cardId 与 freeze=false。
响应 data 返回操作后的整张卡对象(结构同查询卡详情),其中 status 会变为 FROZEN 或 ACTIVATED。
注销
注销是不可逆操作。卡被注销后状态变为INVALID,无法再恢复为可用状态。
data 返回注销后的卡对象,status = INVALID。
换卡(补发)
当持卡人的卡片丢失、损坏或需更换时,可对一张已有卡发起换卡(补发)订单:作废原卡并补发一张新卡。换卡产生一笔type=REPLACEMENT 的卡订单。
换卡的硬规则:
- 换出来的一定是虚拟卡。虚拟卡和实体卡都可以发起换卡,但新卡一律是虚拟卡;持卡人若仍需要实体卡,需在换卡完成后再走一次虚拟卡转实体卡。
- 24 小时内换卡有次数上限,超限返回
DAPI_REPLACE_CARD_APPLY_LIMIT_EXCEEDED,需退避后重试。- 卡号(PAN)会变。这与虚转实不同(虚转实卡号不变),换卡后新卡是一个全新卡号。请提醒持卡人更新已绑定的自动扣款、订阅与商户预留卡信息。
订单状态:卡订单成功时的最终状态为COMPLETED,失败时为FAILED。处理响应时以这两个状态为准,也可结合是否已生成cardId辅助判断。
换卡流程
激活实体卡
只有实体卡需要激活;虚拟卡发行后默认即为ACTIVATED。 实体卡寄出后处于 PENDING_ACTIVATION,持卡人收到卡后由接入机构调用本接口激活。
响应
data 返回卡对象,status 由 PENDING_ACTIVATION 变为 ACTIVATED。实体卡的申请与寄送流程详见实体卡。
获取卡寄送信息
实体卡寄出后,可查询物流单号以便向持卡人展示配送进度。重置 PIN
reset-pin 用于设置实体卡的 PIN。出于 PCI 安全要求,所有敏感字段(原卡过期日期、CVV2、卡号后 4 位、新 PIN)都必须经 AES/GCM 加密后传入,并随请求附上加密所用的 iv。
此接口仅对具备 PCI 资质的接入机构开放。 若接入机构没有 PCI 资质,请改用引导页方案(见下文「无 PCI 资质如何重置 PIN 与查看卡敏感信息」)。
响应
data 为布尔值,true 表示重置成功。
加密算法(AES/GCM/NoPadding):使用企业密钥(enterpriseSecret)作为 AES 密钥,每次随机生成 12 字节 IV(Base64 编码),认证标签长度 128 位。参考实现:
关于 PIN 的概念性说明(PIN 与 CVV 的用途、何时需要),详见虚拟卡。
获取卡敏感信息
retrieve-secure-card 返回完整卡号(pan)、cvv2、过期时间(expireDate)。返回值为加密形态,需配合 iv 用上文同样的 AES/GCM 算法解密。
此接口仅对具备 PCI 资质的接入机构开放。 解密后的明文应直接在前端向持卡人展示,不应经过接入机构后端持久化。
无 PCI 资质如何重置 PIN 与查看卡敏感信息
如果接入机构没有 PCI 资质,不能直接调用reset-pin 或 retrieve-secure-card,而应使用引导页方案:由 DCS 托管的安全页面直接面向持卡人完成 PIN 设置或卡密展示,敏感数据不经过接入机构系统。
下一步
卡的发行与维护流程已经完成。接下来可以:- 配置消费限额,参阅卡限额(Velocity Limits);
- 处理持卡人刷卡时的实时授权,参阅授权转发。

