risk_controls 下有两个独立字段控制 3DS 行为:
enable_3ds—— 卡片是否注册 3DS。allow_3ds_transactions—— 注册 3DS 之后,持卡人是否需要完成挑战(如 OTP),还是走无摩擦流程。
不同卡产品对 3DS 配置的支持有所不同。参见卡产品。
两字段交互逻辑
allow_3ds_transactions 仅在 enable_3ds 为 Y 时生效。当 enable_3ds 为 N 时,无论 allow_3ds_transactions 取值如何,卡片都会跳过 3DS。
配置 enable_3ds
控制卡片是否注册 3DS。
仅 Business Visa 和 Personal Visa 支持。卡片处于 PENDING 或 ACTIVE 状态时可修改。
创建卡片时设置
对已有卡片更新
enable_3ds仅在卡片显式设置过该字段时返回。未设置时,卡片继承 Account 级 3DS 配置。enable_3ds仅 Business Visa 和 Personal Visa 支持;Business Mastercard 会忽略。- 如要注册 3DS 但跳过挑战流程,将
enable_3ds设为Y、allow_3ds_transactions设为N。
配置 allow_3ds_transactions
注册 3DS 之后,allow_3ds_transactions 控制是否允许走挑战流程。
仅 Business Visa 支持。
创建卡片时设置
对已有卡片更新
- 创建卡片时如果省略
allow_3ds_transactions,默认值为Y。 - 更新卡片时如果省略该字段,当前设置保持不变。
- 实体卡激活后,
allow_3ds_transactions自动设置为Y。 - 该设置仅影响 3DS 行为,不影响其他风控检查。
OTP 下发
触发 3DS 挑战时,OTP 会发送到持卡人注册的邮箱。持卡人在身份验证页面输入 OTP 完成验证。3DS OTP webhook
生成 OTP 时,UQPAY 会发送card.3ds.otp webhook:

