首先,发起微信支付,在支付成功的回调里面发起单次分账。
单次分账请求结果如下:
<xml><appid><![CDATA[wx1db540fa86a*****]]></appid><bank_type><![CDATA[CFT]]></bank_type><cash_fee><![CDATA[4]]></cash_fee><fee_type><![CDATA[CNY]]></fee_type><is_subscribe><![CDATA[Y]]></is_subscribe><mch_id><![CDATA[155424****]]></mch_id><nonce_str><![CDATA[pFNRo46rQpjT6yv3wGZOTIIeUujaOBXL]]></nonce_str><openid><![CDATA[oqd8t00bTOgI1DdLjGsroKl*****]]></openid><out_trade_no><![CDATA[27944fd45d1a49cdbe5349304bb*****]]></out_trade_no><result_code><![CDATA[SUCCESS]]></result_code><return_code><![CDATA[SUCCESS]]></return_code><sign><![CDATA[2E6344ACD25AC53E1DAED05F6BCEBDB10221B325A8385A2EA587F20383C7432F]]></sign><time_end><![CDATA[20190927171238]]></time_end><total_fee>4</total_fee><trade_type><![CDATA[JSAPI]]></trade_type><transaction_id><![CDATA[42000003972019092733940*****]]></transaction_id></xml> |
分账动账通知接口代码如下:
@RequestMapping(value = "/sharingnotify", produces = {"application/json;charset=UTF-8"})public String sharingnotify(@RequestBody String str) { logger.debug("异步接收微信分账结果通知,str=[" + str + "]"); try { } catch (Exception e) { e.printStackTrace(); // todo 需要记录本次异常情况 } finally { // 这里表示已收到该服务通知 return success(); }} |
分账文档里面对接口规范的描述不太清楚,用另一种读取request输入流也收不到,所以怀疑根本没有收到分账到账通知,是不是这里通知机制和微信支付不一样?还是我的写法不对?
并没有从以下这些提示中悟出用法:
1、本接口使用微信支付V3版接口规则参见:https://wechatpay-api.gitbook.io/wechatpay-api-v3/
2、分账动账通知是以POST方法访问商户设置的通知url,通知的数据以JSON格式通过请求主体(BODY)传输。
3、该链接是通过商户平台【分账动账通知设置页面】中配置的通知url,必须为https协议。如果链接无法访问,商户将无法接收到微信通知。必须为直接可访问的url,不能携带参数。
但是接口规范里面也没有详细描述
接口自测如下图:

有人解决吗?同题!
你看看是不是因为这个原因:
Q:在商户平台设置了分账动账通知url,为什么收不到通知
A:只有分账接收方才能收到分账动账通知,分账方是不会有通知的
https://developers.weixin.qq.com/community/pay/doc/000284823e8460aada68dacca5b008?blockType=8%3FblockType%3D8%3FblockType%3D8
您好,你的理解是错误的,请按照以下几点理解这个接口:
1,分账动账,指的是分账到账或分账回退后商户金额发生的变动
2,分账动账通知,是指订单支付成功后,再调用分账接口或分账回退接口收到的通知
3,分账动账通知跟统一下单没有关系
还有你这个问题解决了吗?