查询订单API
业务功能
根据商户订单号或者平台订单号查询平台的具体订单信息。
交互模式
后台系统调用交互模式
测试url:
地址:39.107.230.207
端口:10020
请求参数(O-非必传 ,M-必传):
编码格式 | 参数名称 | 类型 | 参数说明 | 样例 | 可空 |
---|---|---|---|---|---|
ASCII | 交易类型(trans_type) | String | 必传:Q(聚合订单查询) | M | |
ASCII | 接入机构标识(assignid) | String | 代理商线下入网获取 | M | |
ASCII | 服务商交易订单号(out_trade_no) | String | 服务商交易订单号 | 161018121614000624679888 | |
ASCII | 签名(sign) | String | 可以传递16位 | M |
请求示例:
字节组拼接顺序:
trans_type + assignid + out_trade_no + sign
签名字符串顺序:
assignid + out_trade_no + trans_type
按照文档顺序
1.针对第一个参数交易类型A,使用1个字节来表示交易类型的ASCII长度(注意:每个参数字节组长度不能超过99个),使用bcd编码获取1个字节 bcd(A.getBytes(“ASCII”).length)
2.获取规定编码的字节组,A.getBytes(“ASCII”)
3.将1和2中字节组进行合并;
4.依次针对所有的字段进行拼接;
5.最后发送字节的16进制字符串:01410863706F73746573740838383838383838381374657374303030303030303036043130303016313231393035303530303030303030311645313445323743343045394544343630
返回参数:
编码格式 | 参数名称 | 类型 | 参数说明 | 样例 | 可空 |
---|---|---|---|---|---|
ASCII | 错误码(return_code) | int | 10000 代表成功,其他是失败 | M | |
ASCII | 服务商交易订单号(out_trade_no) | String | M | ||
ASCII | SAAS平台订单号(trade_no) | String | M | ||
ASCII | 被扫类型(trade_type) | String | 微信支付:WX 支付宝支付:ALI 银联二维码支付:UNIONQR | M | |
ASCII | 消费金额(total_amount) | String | M | ||
ASCII | 交易状态(trade_status) | String | 1:交易成功 2:交易失败 3:交易进行中 4:交易超时 | M | |
UTF-8 | 错误信息(return_msg) | String | O | ||
ASCII | 已退款金额(refunded_amount) | String | 已退款金额(v1.30增加) | M | |
ASCII | 剩余可退款金额(remanent_amount) | String | 剩余可退款金额(v1.30增加) | M | |
ASCII | 签名(原 sign) | String | M |
返回示例:
与请求方式一样,获取SAAS返回字节组,先通过解析第一个字节获并使用bcd编码获取return_code的长度,根据return_code的值,进行成功和失败两种的解析。解析过程中要注意参数的顺序
1.当retrun_code为10000时,SAAS平台返回字节组顺序是:return_code + out_trade_no + trade_no + trade_type+total_amount +trade_status +refunded_amount + remanent_amount +sign
签名顺序:return_code + out_trade_no + trade_no + trade_type+total_amount +trade_status +refunded_amount + remanent_amount
2.当retrun_code不为10000时,SAAS平台返回字节组顺序是:return_code + ret_msg + sign
签名顺序:return_code + return_msg
SAAS返回字节组转化16进制字符串