Webhook 通知

上游通知按环境进入对应地址:正式环境为 https://uqpay.zytong.cn/webhook/notify ,沙箱环境为 https://uqpay-sandbox.zytong.cn/webhook/notify 。平台用该环境自己的密钥验签并更新订单后,转发到客户启用凭证上的 https 回调地址。报文中不含 app_id。

POST商户 callback_url

通知字段

参数类型说明
version string 接口版本,如 V1.6.0
event_name string 事件分类。发卡事件为 ISSUING
event_type string 具体事件。开卡成功为 card.create.succeeded,失败为 card.create.failed
event_id string 事件编号。重试时不变,请用它去重
source_id string 触发事件的来源编号。开卡、充值、提现、状态变更时为上游卡订单号
data object 事件内容。不同 event_type 的字段不同,下面以开卡成功为例
data.card_id string 卡片 ID
data.card_bin string 卡 BIN
data.card_scheme string 卡组织,如 VISA、MASTERCARD
data.card_number string 掩码卡号,不含 CVV
data.form_factor string VIRTUAL 虚拟卡,PHYSICAL 实体卡
data.mode_type string SHARE 共享额度,SINGLE 单卡额度
data.card_product_id string 卡产品 ID
data.card_available_balance string 卡片可用余额
data.card_status string PENDING 处理中,ACTIVE 可用,FROZEN 冻结,BLOCKED 锁定,PRE_CANCEL 预注销,CANCELLED 已停用,FAILED 创建失败
data.cardholder object 持卡人摘要
data.cardholder.cardholder_id string 持卡人 ID
data.cardholder.cardholder_status string SUCCESS、PENDING、INCOMPLETE、FAILED
data.cardholder.email string 邮箱
data.cardholder.first_name string 名
data.cardholder.last_name string 姓
data.cardholder.create_time string 持卡人创建时间,ISO 8601
data.metadata object 开卡时写入的自定义信息
data.risk_control object 3DS 等风控设置。未设置时可能不返回
data.spending_limits array 消费限额。interval 如 PER_TRANSACTION,amount 为该区间上限

转发报文

外层字段与官方 Event 一致:version、event_name、event_type、event_id、source_id、data。每张凭证单独投递一次,Authorization 用这张凭证自己的 token:对 JSON 做字典序拼接后追加 token,再取 MD5。没有填写回调地址的凭证不会收到通知。卡号只会是掩码,不含 CVV。

处理建议

请按 event_id 去重,并返回 HTTP 200。data 的字段随 event_type 变化。开卡关注 card.create.succeeded、card.create.failed;充值是 card.recharge.succeeded / card.recharge.failed;提现是 card.withdraw.succeeded / card.withdraw.failed;状态变更是 card.status.update.succeeded / card.status.update.failed。交易类事件的 event_type 形如 issuing.transaction.authorization。右侧示例是开卡成功。