预授权完成撤销¶
接口描述¶
该接口用于三方app调用银行卡预授权完成撤销交易。对预授权完成订单进行撤销,仅可全额撤销预授权完成交易。
接入方式¶
PnrTransListener listener = new PnrTransListener() {
@Override
public void onResult(String response) {
Timber.d("交易结果:" + response);
}
};
JsonObject jsonData = new JsonObject();
jsonData.addProperty(PnrRequestKey.KEY_INTERFACE_TYPE, InterfaceType.Trans.IT_AUTH_SALE_VOID);
PnrService.getInstance(mContext).doTrans(jsonData.toString(), listener);
请求参数¶
listener
为结果监听,不能为空;onResult(String response)
为结果回调,response
为json串,值参见 返回结果
jsonData
为json字符串。- 其内的字段说明如下:
字段名称 | 中文描述 | 数据类型 | 要求 | 说明 |
---|---|---|---|---|
interfaceType | 接口类型 | String | M | 接口类型,预授权完成撤销接口固定值为 InterfaceType.Trans.IT_AUTH_SALE_VOID (voidauthsale) |
oriVoucherNo | 原凭证号 | String | M | 对应原交易返回的voucherNo |
outOrdId | 外部订单号 | String | O | 非汇付内部的订单号,即商户自定义订单号 (扫码交易变长1-50位,银行卡交易变长20-40位,参见 订单号规则建议) |
goodsDesc | 商品描述 | String | C | 商品名称(默认为消费)最长125位 |
bgRetUrl | 异步通知地址 | String | O | URL中如带端口需在8000~9005范围内,否则无法通知;URL上请勿附带参数,长度不超过200;需要加virgo://前缀; 示例:virgo://http://xxxx.xxx.com/ads/callback |
merPriv | 商户私有域 | String | O | 商户自己的参数 |
ordRemark | 订单备注 | String | O | 备注的内容(UTF-8格式,长度为45个字符) |
outPrintData | 自定义第三方打印数据 | String | O | 可选,json串,参见 自定义打印 |
outPrintQrCode | 自定义第三方打印二维码 | String | O | 可选,此数据转成二维码并打印 |
返回结果¶
response
为json字符串。- 其内字段如下:
字段名称 | 中文描述 | 数据类型 | 要求 | 说明 |
---|---|---|---|---|
responseCode | 系统返回码 | String | M | 参见 系统返回码 |
message | 错误信息 | String | C | 当返回码为非00时出现 |
merOrdId | 订单号 | String | M | 原交易的outOrdId不为空时则返回传入的outOrdId;否则返回收银台自动生成的订单号(终端订单号termOrdId) |
当交易成功(responseCode=00)时,下面参数生效 | ||||
transDate | 交易日期 | String | M | 8位,yyyyMMdd |
transTime | 交易时间 | String | M | 6位,HHmmss |
ordAmt | 交易金额 | String | M | 单位:分 |
ordId | 汇付交易流水号 | String | M | 汇付生成的后台唯一标识 |
batchId | 批次号 | String | O | 6位 |
voucherNo | 凭证号 | String | O | 6位 |
refNo | 参考号 | String | O | 12位 |
bankName | 银行名称 | String | O | 仅银行卡交易此字段生效 |
cardType | 借贷记标识 | String | O | 仅银行卡交易此字段生效,C-信用卡, D-借记卡 |
payCardId | 交易卡号 | String | O | 仅银行卡交易此字段生效 |
authNo | 授权号 | String | O | 仅银行卡交易此字段生效 |
memberId | 商户号 | String | M | 汇付商户号 |
merName | 商户名称 | String | O | 汇付商户名称 |
posMerId | 银联商户号 | String | O | 仅银行卡交易此字段生效 |
deviceId | 物理终端号 | String | M | 汇付终端号 |
outOrdId | 外部订单号 | String | C | outOrdId对应传入的outOrdId |
termOrdId | 终端订单号 | String | M | 终端收银台生成的订单号 |
oriOutOrderId | 原外部订单号 | String | M | 原预授权完成订单的外部商户订单号 |
oriTermOrdId | 原终端订单号 | String | M | 终端生成的原预授权完成订单号 |