codecamp

微信小程序云开发SDK文档 微信支付·查询订单

CloudPay.queryOrder()

支持端:云函数 2.0.2

查询订单

说明

该接口提供所有微信支付订单的查询,商户可以通过该接口主动查询订单状态,完成下一步的业务逻辑。

需要调用查询接口的情况:

◆ 当商户后台、网络、服务器等出现异常,商户系统最终未接收到支付通知; ◆ 调用支付接口后,返回系统错误或未知交易状态情况; ◆ 调用被扫支付API,返回USERPAYING的状态; ◆ 调用关单或撤销接口API之前,需确认支付状态;

参数说明

字段名变量名必填类型示例值描述
子商户号sub_mch_idString(32)1900000109微信支付分配的子商户号
微信订单号transaction_id二选一String(32)1009660380201506130728806387微信的订单号,优先使用
商户订单号out_trade_noString(32)1217752501201407033233368018商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-*@ ,且在同一个商户号下唯一。
随机字符串nonce_strString(32)C380BEC2BFD727A4B6845133519F3AD6随机字符串,不长于32位。推荐随机数生成算法

返回值说明

字段名变量名必填类型示例值描述
返回状态码returnCodeString(16)SUCCESSSUCCESS/FAIL 此字段是通信标识,非交易标识,交易是否成功需要查看trade_state来判断
返回信息returnMsgString(128)签名失败返回信息,如非空,为错误原因。如 签名失败、参数格式校验错误

以下字段在returnCode为SUCCESS的时候有返回

字段名变量名必填类型示例值描述
服务商的APPIDappidString(32)wxd678efh567hg6787服务商商户的APPID
商户号mch_idString(32)1230000109微信支付分配的商户号
小程序的APPIDsub_appidString(32)wx8888888888888888微信分配的小程序ID
子商户号sub_mch_idString(32)1900000109微信支付分配的子商户号
随机字符串nonce_strString(32)5K8264ILTKCH16CQ2502SI8ZNMTM67VS随机字符串,不长于32位。推荐随机数生成算法
签名signString(32)C380BEC2BFD727A4B6845133519F3AD6签名,详见签名生成算法
业务结果result_codeString(16)SUCCESSSUCCESS/FAIL
错误代码err_codeString(32)SYSTEMERROR错误码
错误代码描述err_code_desString(128)系统错误结果信息描述

以下字段在returnCode 和result_code都为SUCCESS的时候有返回

字段名变量名必填类型示例值描述
设备号device_infoString(32)013467007045764微信支付分配的终端设备号,
用户标识openidString(128)oUpF8uMuAJO_M2pxb1Q9zNjWeS6o用户在商户appid下的唯一标识
是否关注公众账号is_subscribeString(1)Y用户是否关注公众账号,Y-关注,N-未关注
用户子标识sub_openidString(128)wxd930ea5d5a258f4f用户在子商户appid下的唯一标识
是否关注子公众账号sub_is_subscribeString(1)Y用户是否关注子公众账号,Y-关注,N-未关注
交易类型trade_typeString(16)JSAPI调用接口提交的交易类型,取值如下:JSAPI,NATIVE,APP,MICROPAY,详细说明见参数规定
交易状态trade_stateString(32)SUCCESSSUCCESS—支付成功
REFUND—转入退款
NOTPAY—未支付
CLOSED—已关闭
REVOKED—已撤销(刷卡支付)
USERPAYING--用户支付中
PAYERROR--支付失败(其他原因,如银行返回失败)
付款银行bank_typeString(16)CMC银行类型,采用字符串类型的银行标识
订单金额total_feeInt100订单总金额,单位为分
标价币种fee_typeString(8)CNY货币类型,符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型
应结订单金额settlement_total_feeInt100当订单使用了免充值型优惠券后返回该参数,应结订单金额=订单金额-免充值优惠券金额。
现金支付金额cash_feeInt100现金支付金额订单现金支付金额,详见支付金额
现金支付货币类型cash_fee_typeString(16)CNY货币类型,符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型
代金券金额coupon_feeInt100“代金券或立减优惠”金额<=订单总金额,订单总金额-“代金券或立减优惠”金额=现金支付金额,详见支付金额
代金券使用数量coupon_countInt1代金券或立减优惠使用数量
代金券IDcoupon_id_$nString(20)10000代金券或立减优惠ID, $n为下标,从0开始编号
代金券类型coupon_type_$nStringCASHCASH--充值代金券
NO_CASH---非充值优惠券
开通免充值券功能,并且订单使用了优惠券后有返回(取值:CASH、NO_CASH)。$n为下标,从0开始编号,举例:coupon_type_$0
单个代金券金额coupon_fee_$nInt100单个代金券或立减优惠支付金额, $n为下标,从0开始编号
微信支付订单号transaction_idString(32)1217752501201407033233368018微信支付订单号
商户订单号out_trade_noString(32)1217752501201407033233368018商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-
商家数据包attachString(128)123456商家数据包,原样返回
支付完成时间time_endString(14)20141030133525订单支付时间,格式为yyyyMMddHHmmss,如2009年12月25日9点10分10秒表示为20091225091010。其他详见时间规则
交易状态描述trade_state_descString(256)支付失败,请重新下单支付对当前查询订单状态的描述和下一步操作的指引

错误码

名称描述原因解决方案
ORDERNOTEXIST此交易订单号不存在查询系统中不存在此交易订单号该API只能查提交支付交易返回成功的订单,请商户检查需要查询的订单号是否正确
SYSTEMERROR系统错误后台系统返回错误系统异常,请再调用发起查询


微信小程序云开发SDK文档 微信支付·统一下单
微信小程序云开发SDK文档 微信支付·关闭订单
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

微信小程序 指南

目录结构

开放能力

微信小程序 调试

微信小程序 实时日志

微信小程序 小程序测速

微信小程序 基础组件

微信小程序 API

媒体

界面

微信小程序API 绘图

微信小程序 服务端

接口调用凭证

统一服务消息

微信小程序 服务市场

微信小程序 生物认证

微信小程序 云开发

服务端

微信小程序云开发服务端API 数据库

SDK文档

微信小程序 扩展能力

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }