支付结果通知-微信合单支付文档(2.0)

微信支付 文章 2020-03-24 13:25 1189 0 全屏看文

AI助手支持GPT4.0

支付结果通知api

场景介绍

● 合单支付的支付结果将只通知给合单支付发起方(即combine_appid一方)。 

支付完成后,微信会把相关支付结果和用户信息发送给商户,商户需要接收处理,并返回应答。

对后台通知交互时,如果微信收到商户的应答不是成功或超时,微信认为通知失败,微信会通过一定的策略(如30分钟共8次)定期重新发起通知,尽可能提高通知的成功率,但微信不保证通知最终能成功。 (通知频率为15/15/30/180/1800/1800/1800/1800/3600,单位:秒)

注意:同样的通知可能会多次发送给商户系统。商户系统必须能够正确处理重复的通知。

推荐的做法是,当收到通知进行处理时,首先检查对应业务数据的状态,判断该通知是否已经处理过,如果没有处理过再进行处理,如果处理过直接返回结果成功。在对业务数据进行状态检查和处理之前,要采用数据锁进行并发控制,以避免函数重入造成的数据混乱。

特别提醒:商户系统对于支付结果通知的内容一定要做签名验证,并校验返回的订单金额是否与商户侧的订单金额一致,防止数据泄漏导致出现“假通知”,造成资金损失。

接口链接

支付通知接收地址是通过【合单下单api】中提交的请求参数notify_url设置,请确保通知url为外网直接可访问的url,不能携带参数。示例:notify_url:“https://pay.weixin.qq.com/wxpay/pay.action”

是否需要证书

返回参数

名称

变量名

必填

类型

示例值

描述

返回状态码

return_code

String(16)

SUCCESS

SUCCESS/FAIL 
       此字段是通信标识,非交易标识,交易是否成功需要查看result_code来判断

返回信息

return_msg

String(128)

签名失败

返回信息,如非空,为错误原因 
       签名失败 
       参数格式校验错误

 

当return_code为SUCCESS时,返回以下字段:

合单appid

combine_appid

String(32)

wx8888888888888888

合单支付发起方的appid相同。appid是商户在微信申请公众号或移动应用成功后分配的帐号ID,登录平台为mp.weixin.qq.com或open.weixin.qq.com

合单商户号

combine_mch_id

String(32)

1900000109

合单支付发起方的商户号。商户号是商户在微信申请微信支付成功后分配的帐号ID,登录平台为pay.weixin.qq.com

随机字符串

nonce_str

String(32)

5K8264ILTKCH16CQ2502SI8ZNMTM67VS

随机字符串,不长于32位。推荐随机数生成算法

设备号device_infoString(32)000077设备号,自定义参数

合单用户标识

combine_openid

String(128)

oUpF8uMuAJO_M2pxb1Q9zNjWeS6o

trade_type=JSAPI时,此参数必填,此项为使用combine_appid获取的对应用户openid。Openid是用户在商户appid下的唯一标识(appid不同,则openid也不同)

合单商户订单号

combine_out_trade_no

String(32)

1217752501201407033233368018

合单支付总单号,商户系统内部的订单号,32个字符内、可包含字母, 其他说明见商户订单号

交易类型trade_typeString(16)MWEB

扫码支付:NATIVE

公众号支付:JSAPI

APP支付:APP

H5支付:MWEB

付款银行bank_typeString(16)CMC银行类型,采用字符串类型的银行标识,银行类型见附表

签名

sign

String(128)

C380BEC2BFD727A4B6845133519F3AD6

通过签名计算后得到的签名值,详见签名生成算法

签名类型

sign_type

String(64)

HMAC-SHA256

暂只支持HMAC-SHA256的签名方式

业务结果

result_code

String(16)

SUCCESS

SUCCESS/FAIL

业务结果描述

result_msg

String(32)

OK

对于业务执行的详细描述

错误代码

err_code

String(32)

SYSTEMERROR

详细参见错误列表

错误代码描述

err_code_des

String(128)

系统错误

错误返回的信息描述

+子单信息

sub_order_list

String(10240)

{

 "order_num": 3,

 "order_list": [

  {"appid": "wxdace645e0bc2c424", 

   "mch_id" : "1900009001", 

   "": "", 

   "": ""

  }

 ]

}

请参照示例,使用JSON格式上传子单信息。

order_num 子单笔数,Int,必填

order_list:[] 子单详情列表,字段详细说明见下拉列表(点击行前“+”打开下拉列表)

通知参数示例:

<xml>
        <return_code><![CDATA[SUCCESS]]></return_code>
        <return_msg><![CDATA[OK]]></return_msg>
        <combine_appid><![CDATA[wx2421b1c4370ec43b]]></combine_appid>
        <combine_mch_id><![CDATA[10000100]]></combine_mch_id>
        <nonce_str><![CDATA[TN55wO9Pba5yENl8]]></nonce_str>
        <sign><![CDATA[BDF0099C15FF7BC6B1585FBB110AB635]]></sign>

 <sign_type><![CDATA[HMAC-SHA256]]></sign_type>
        <result_code><![CDATA[SUCCESS]]></result_code>

 <trade_type><![CDATA[JSAPI]]></trade_type>
        <combine_openid><![CDATA[oUpF8uN95-Ptaags6E_roPHg7AG0]]></combine_openid>

 <bank_type><![CDATA[CMC]]></bank_type>
        <combine_out_trade_no><![CDATA[1415757673]]></combine_out_trade_no>

 <sub_order_list><![CDATA[{"order_num": 3,"order_list": [{"appid":"wx2421b1c4370ec43b","mch_id":"1230000109","openid":"oUpF8uMuAJO_M2pxb1Q9zNjWeS6o","total_fee":100,"cash_fee":100,"transaction_id":"4217752501201407033233368018","out_trade_no":"12177525012","attach":"test001","time_end":"20171030133525"},{"appid":"wx2421b1c4370ec43b","mch_id":"1230000109","openid":"oUpF8uMuAJO_M2pxb1Q9zNjWeS6o","sub_appid":"wx2421b1c437055ce","sub_mch_id":"1230000108","sub_openid":"oUp3rfMuAJO_123xb1Q9zNjWedco","trade_type":"JSAPI","total_fee":100,"cash_fee":100,"transaction_id":"4217752501201407033233368018","out_trade_no":"12177525012","attach":"test001","time_end":"20171030133525"},{"appid":"wx2421b1c4370ec43b","mch_id":"1230000109","openid":"oUpF8uMuAJO_M2pxb1Q9zNjWeS6o","trade_type":"JSAPI","total_fee":100,"fee_type":"USD","cash_fee":100,"cash_fee_type":"CNY","transaction_id":"4217752501201407033233368018","out_trade_no":"12177525012","attach":"test001","time_end":"20171030133525","rate_value":"65000000"}]}]]></sub_order_list>
       </xml>


-EOF-

AI助手支持GPT4.0