payment.status 为 Authorised、Pending 或 Verifying 的支付结果,或如果支付超时时,您可以从您的服务器向 EVO Cloud 端点| 参数 | 必填 | 说明 |
|---|---|---|
merchantTransID | M | 初始 Payment 的 merchantTransInfo.merchantTransID。 |
| 参数 | 必填 | 说明 |
|---|---|---|
merchantTransInfo | M | 本次 cancel 的引用信息,包含唯一的 merchantTransID 和 merchantTransTime(发起请求的时间)。 |
initiatingReason | O | 可选:本次请求的原因。 |
webhook | O | 用于接收通知的 URL。指定后可在支付成功后从 EVO Cloud 接收通知。 |
paymentMethod | O | 支付方式对象。 |
paymentMethod.type | O | 本文档场景下须为 card。 |
metadata | O | 您可在请求中自定义的引用信息,将在响应中原样回显。Notification 中的 metadata 与请求中的 metadata 一致。 |
paymentMethod.type:请求中设置为 card。paymentMethod.card.encryptedCardInfo:加密后的卡信息。如果使用 EVO Cloud 客户端方案安全加密用户卡信息,前端会从 EVO Cloud SDK 获取该值,需发送至您的服务器,再由服务器原样转发至 EVO Cloud。paymentMethod.card.cardInfo:卡信息原始数据。如果将原始卡数据采集并发送至 EVO Cloud,需要在此对象中指定 cardNumber、expiryDate、cvc(可选)、track2 与 holderName。对于部分 UnionPay 借记卡,expiryDate 也为可选。paymentMethod.card.encryptedCardInfo 和 paymentMethod.card.cardInfo 同时存在,将以 paymentMethod.card.cardInfo 为准。)paymentMethod.card字段| 字段路径 | 必填/选填 | 条件 | 说明 |
|---|---|---|---|
paymentMethod.card | M | paymentMethod.type=card | 卡相关交易对象。 |
paymentMethod.card.encryptedCardInfo | O | 已批准加密卡集成方案 | 加密卡信息。 |
paymentMethod.card.cardInfo | O | 已批准卡信息集成方案 | 卡信息容器。 |
paymentMethod.card.cardInfo.cardNumber | M | 手动/MOTO 或最终 schema 要求 | 卡号。在示例或测试数据中请勿使用真实值。 |
paymentMethod.card.cardInfo.expiryDate | O | MOTO 必填 | 过期日期,MMYY 格式。 |
paymentMethod.card.posEntryMode | O | POS 卡通道 | 卡数据输入方式。 |
paymentMethod.card.pinFlag | O | 终端支持 PIN | true 表示终端可接受 PIN;false 表示不接受。 |
paymentMethod.card.termReadability | O | 提供终端能力时 | 终端卡数据输入能力。 |
paymentMethod.card.icCardCondCode | O | UnionPay IC 场景 | UnionPay 卡条件码。 |
paymentMethod.card.noSecretNoSignFlag | O | UnionPay 场景 | UnionPay 无密/无签标识。 |
paymentMethod.card.cardInfo.track1 | O | 磁条或特定通道要求 | Track 1 数据。最终字段名以已批准的 schema 为准。 |
paymentMethod.card.cardInfo.track2 | O | 磁条、ICC、contactless 或 fallback 场景 | Track 2 数据。禁止以明文存储或记录。 |
paymentMethod.card.cardInfo.cardSequenceNum | O | ICC 或 contactless 场景 | IC 卡序列号。 |
paymentMethod.card.cardInfo.icCardData | O | ICC 或 contactless 场景 | EMV/ICC TLV 数据。 |
paymentMethod.card.pin | O | PIN 交易 | PIN 容器(如最终 schema 中包含)。 |
paymentMethod.card.pin.encryptedPin | M | PIN 交易 | 加密后的 PIN block。禁止以明文记录或持久化。 |
paymentMethod.card.pin.pinEncryptMethod | M | PIN 交易 | 已批准的 PIN 加密方式,例如支持时的 3DES。 |
paymentMethod.card.pin.checkValue | O | 启用密钥版本查询 | 用于识别适用工作密钥版本的值(如支持)。 |
| posEntryMode 模式 | 交易活动 | 典型条件数据 |
|---|---|---|
magnetic | 磁条读取 | track2 |
ICC | 接触式芯片插入 | track2 、icCardData 、cardSequenceNum |
contactless | NFC EMV 挥卡 | track2 、icCardData 、cardSequenceNum |
contactless magnetic | 使用磁条通道的 contactless 交易 | track2 |
fallback | EMV 回退至磁条 | track2 |
manual | 手工输入卡 | cardNumber 、expiryDate |
MOTO | 邮购/电话订购 | cardNumber 、expiryDate |
cancel.status:本次 cancel 的状态,必填。取值可为 Success、Failed 或 Received。如果 cancel.status 为 Received,您需要再发起一次 HTTP GET 请求以获取 cancel 的最终状态(详见 Step 2),或等待 EVO Cloud 的通知 webhook。cancel.merchantTransInfo:本次 cancel 的引用对象,由您的服务器生成,必填。从您的请求中原样回显。cancel.evoTransInfo:本次 cancel 的引用对象,由 EVO Cloud 生成,必填。包含 evoTransID 和 evoTransTime。cancel.pspTransInfo:本次 cancel 的引用对象,由 PSP 生成,可选。包含 pspTransID 和 pspTransTime。如果 PSP 返回,EVO Cloud 会将该信息从 PSP 转发至您的服务器。Received,且您未使用 notification webhook,可以从 EVO Cloud 查询最终结果。| 参数 | 必填 | 说明 |
|---|---|---|
merchantTransID | M | 初始 cancel 的 merchantTransInfo.merchantTransID。 |
result.code 为 B0012,请再次核对响应中 payment.status 显示的原始交易状态。如果为 Captured,则表示该笔支付已被 Capture,您无法 cancel 该笔支付。这种情况下,您需要改用 refund。详见 Refund 章节。