订单查询接口
此接口几乎在所有场景下都用不到。
此接口只作为订单状态的辅助查询,严禁使用此接口做订单状态的轮询,否则将自动导致IP进入黑名单!
正确的业务逻辑:本平台收到支付成功消息后,会通过你发起付款接口填入的notify_url参数网址进行回调,开发者服务器通过接收异步回调通知后更新自己的订单状态,并且开发者前端的订单查询页面应接入自己的服务器数据库查询接口。回调的参数请见左侧的“回调通知接口”
注意只能查询最近30天的订单
请求地址(不支持浏览器直接打开):https://open.yunmianqian.com/api/query
调用方法:POST (注意请求头中的 content-type 必须为 application/x-www-form-urlencoded )
请求参数:
字段名称 | 字段类型 | 是否必填 | 说明 |
---|---|---|---|
app_id | int(16) | Y | 应用ID,在后台系统设置页面查看 |
order_sn | string(32) | N | (二选一)云端唯一订单编号 |
out_order_sn | string(32) | N | (二选一)商家订单编号。一般order_sn和out_order_sn选择其中一个填写即可。若两个参数都有值,会忽略此参数 |
sign | string(32) | Y | 签名, 将参数 app_id + order_sn + out_order_sn + app_secret 顺序拼接后md5(32位小写)(纯 value 拼接,不要包含 + 号)。注意最后一个参数是app_secret,可在云端系统后台设置页面查看 |
接口返回(注意需要手动urldecode),只需要关注pay_price和expire_at这两个参数即可:
字段名称 | 字段类型 | 是否必填 | 说明 |
---|---|---|---|
code | int(16) | Y | 状态码,200:成功调用,1001:签名错误,1003:缺少参数 |
msg | string(32) | Y | 状态信息,code字段所对应的信息,200:"success",1001:"secret_incorrect",1003:"missing_argument"。不支持本地调试 |
data | string(32) | Y | 将下面的所有参数括起来 |
list | array(32) | Y | 这是一个数组,每个成员都包括下面的所有参数。若未查到相关数据,则为空数组。注意此数组目前最多有一个成员 |
order_sn | string(32) | Y | 云端唯一订单编号 |
out_order_sn | string(32) | Y | 商家订单编号 |
pay_way | string(32) | Y | 支付类型 alipay/wechat/mipay,此值可能和你开始传入的值不同,有时候会使用第三方聚合支付方式 |
price | int(16) | Y | 订单价格(单位为分) |
qr_type | string(32) | Y | 二维码类型。返回值为fixed/business/no_fixed/original,分别为个人版固额二维码/商业版收款码/个人版非固额二维码/原价 |
qr_price | int(16) | Y | 返回的二维码的金额(单位为分),如果为0或-1表示使用的是不固定金额二维码,具体金额需要用户输入,需要在付款时让用户自己输入 pay_price 的数值 |
pay_price | int(16) | Y | 【重要】用户最终应该支付的金额(单位为分),云端将会依靠此金额来区分是哪个用户在支付 |
paid_at | string(32) | Y | 用户支付的时间(若未支付则此字段值为空字符串"") |
order_status | string(32) | Y | 其中order_status有几种状态。"new":新订单等待支付。"paid":订单已支付未回调,一般这种状态属于回调失败,可以查看历史回调日志查询错误。"success":订单已支付已经回调成功。"fee_error":账户余额不足扣除手续费失败,订单未回调。"closed":订单未支付已关闭。为防范道德风险,"fee_error"状态下仍返回"new" |
expire_at | string(32) | Y | 【重要】支付二维码过期具体时间。若用户在过期时间外支付,则不会回调!所以需要在你的支付页面显示支付剩余时间,同时必须在过期时,在支付页面提示用户已过期并隐藏掉二维码!并提示用户重新下单 |
attach | string(255) | Y | 用户自定义数据,原样返回 |
server_time | string(32) | Y | 服务器时间 |
接口返回示例:
{
"code":200,
"msg":"success",
"data":{
"list":[{
"order_sn": "cad5076f55834f5fadddcfc018cc4068",
"out_order_sn": "201905015",
"pay_way": "wechat",
"price": 3500,
"qr_type": "fixed",
"qr_price": 1000,
"pay_price": 1000,
"paid_at": "2019-03-23 04:13:12",
"order_status": "success",
"expire_at": "2019-03-23 04:13:12",
"attach": "",
}],
"server_time": "2019-03-23 04:13:12",
},
}