数据格式
接口数据格式统一采用以下格式:
https://domain/path?msg=&sign=
接口公共参数msg和sign的值说明如下:
msg为所有参数base64编码后的值,为方便后续说明此处将base64编码后的msg值记为m;
sign的值s在得到m之后经过2个步骤计算得到:
1)计算m的32位md5值,得到32位大写字符串m1;
2)使用数字证书签名方式计算m1的签名,得到s。
接口地址
https://epay.163.com/pay_api/v1/order_pay_verify.htm
请求参数
参数名称 | 参数 | 必填 | 类型 | 描述 |
商户号 | platformId | 是 | varchar2(40) | 商户号 |
调用方平台商户号 | callerPlatformId | 否 | varchar2(40) | 共享签约主平台商户号 |
用户帐号 | accountId | 是 | varchar2(60) | 用户在商户的唯一Id |
账号类型 | accountType | 是 | varchar2(20) | 传outer |
支付方式 | payMethod | 否 | varchar2(40) | 传 quickpay: |
订单号 | orderId | 否 | varchar2(40) | 订单号, 上一步返回参数 |
短信验证码 | authCode | 是 | varchar2(10) | 短信验证码 |
银行卡签约流水 | quickPayId | 否 | varchar2(40) | 银行卡签约流水号为上一步返回参数。 银行卡首次签约并支付时才有这个字段,如果非首次签约,该字段不需要传。 |
充值流水 | chargeId | 否 | varchar2(40) | 充值流水号为上一步返回参数。若没有quickPayId ,chargeId 一定要传(银行卡非首次签约并支付需要传) |
充值金额 | chargeAmount | 否 | varchar2(1024) | 如果有quickpayId,没有chargeId, 同时bizType为charge时,充值金额必须有 |
附加信息 | attach | 否 | varchar2(60) | 附加信息, 银行卡支付时,上一步返回 |
用户IP | userIp | 是 | varchar2(20) | 用户操作IP,请确定传用户的真实IP,签约时可能会调用公安网进行身份验证 |
风控信息 | riskInfo | 否 | varchar2(1024) | 风控信息,json格式,见商户风控参数表 |
注意:
如果是已经签约成功的卡,调用该接口,那么chargeId 一定需要有;quickpayid 是未成功的,那就必须要有chargeAmount
返回参数
参数名称 | 参数 | 必填 | 类型 | 描述 |
操作返回码 | operationResp | 是 | varchar2(10) | 操作响应码,本次调用是否成功 |
业务返回码 | businessResp | 否 | varchar2(10) | 业务相应码,当operationResp为成功时, |
详细消息 | detailMsg | 否 | varchar2(1024) | 返回详情,human-readable |
订单号 | orderId | 否 | varchar2(40) | 订单号,当operationResp、businessResp为成功时, |
支付状态 | payStatus | 否 | varchar2(40) | 当前支付请求的支付状态,当operationResp为成功、 支付方式为银行卡支付且不是首次签约时,解析本字段。 字段值包含SUCCESS(代表成功),FAILED(代表失败),PROCESSING(代表处理中)三种状态。 若是签约场景则不支付订单,不需要判断本字段 注:当对一笔已经成功的订单进行支付时,PayStatus返回的结果是失败,代表本次支付行为是失败的。 |
签约状态 | signStatus | 否 | varchar2(40) | 当前签约同时完成支付请求的签约状态,当operationResp为成功、 支付方式为银行卡支付且是首次签约时,解析本字段。 字段值包含SUCCESS(代表成功),FAILED(代表失败),PROCESSING(代表处理中)三种状态。 注:当对一笔已经签约成功的快捷进行签约同时完成支付请求时,signStatus返回的结果是成功,代表本次签约行为是成功的。 |