【微信支付】微信小程序支付开发者文档 https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=9_7
通知url必须为直接可访问的url,不能携带参数。示例:notify_url:“https://pay.weixin.qq.com/wxpay/pay.action”
回调通知注意事项
● notify_url需要填写商户自己系统的真实地址,不能填写接口文档或demo上的示例地址。
● notify_url必须是以https://或http://开头的完整全路径地址,并且确保url中的域名和IP是外网可以访问的,不能填写localhost、127.0.0.1、192.168.x.x等本地或内网IP。
● notify_url不能携带参数。
● 常见错误举例:
错误描述 |
错误示例 |
---|---|
url中只有域名,缺少具体的路径 |
http://www.weixin.qq.com |
url不是以https://或http://开头,缺少域名或IP |
./PayNotify.aspx |
url中填写了本地或者内网IP |
http://127.0.0.1/pay/notify.php |
填写了不是url格式的字符串 |
xxxxxxx,1234567,test |
2、返回报文格式规范
● 返回报文必须是xml格式,字段名需与接口文档说明的一致,报文前后和各字段标签中间不能包含特殊字符。
● 常见错误举例:
错误描述 |
错误示例 |
---|---|
返回内容为空或者非xml格式字符串 |
ok,success,支付成功 |
返回的xml格式报文中间有其他字符 |
<xml>\n<return_code><![CDATA[SUCCESS]]></return_code> |
返回的是json格式 |
{"return_code":"SUCCESS";"return_msg":"OK"} |
返回的是整个页面的html代码 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head><title>支付成功通知页面</title></head><body>success</body></html> |
3、回调处理逻辑注意事项
● notify_url的代码处理逻辑不能做登录态校验。
● 商户系统收到支付结果通知,需要在5秒内返回应答报文,否则微信支付认为通知失败,后续会重复发送通知。
● 同样的通知可能会多次发送给商户系统,商户系统必须能够正确处理重复的通知。如果已处理过,直接给微信支付返回成功。
● 商户侧对微信支付回调IP有防火墙策略限制的,需要对以下IP段开通白名单:
101.226.103.0/25、140.207.54.0/25、103.7.30.0/25、183.3.234.0/25、58.251.80.0/25。
【微信支付】微信小程序支付开发者文档 https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=9_1
通知地址 | notify_url | 是 | String(256) | http://www.weixin.qq.com/wxpay/pay.php | 异步接收微信支付结果通知的回调地址,通知url必须为外网可访问的url,不能携带参数。 |
同步异步 https://opensupport.alipay.com/support/knowCategory/20070
回调地址后是否可以加自定义参数
如何实现设置自定义参数回调时获取:
1、异步通知可通过请求参数设置passback_params公用回传参数,该参数异步通知返回;
2、同步通知无法设置信息,回调时获取;
若商户在回调地址后添加自定义参数,可能造成影响如下:
1、调用接口进行参数签名时,可能因为回调地址携带自定义参数导致签名报错,无法签名成功;
2、支付成功返回通知数据验签时需要过滤掉自定义参数,否则会验签失败;
3、异步回调地址需外网post访问,且访问状态为http200,可能因为异步回调地址携带自定义参数导致无法外网post访问成功。
同步通知与异步通知的区别
2、发送通知的形式不一样,同步通知是在支付成功以后页面跳转会触发的,异步通知是交易状态变更会触发的.
3、返回通知参数不同
更多区别详情可参考该 同步通知与异步通知参数说明.
return_url和notify_url的区别
notify_url作用:支付宝服务器主动通知商户网站里指定页面路径,返回订单信息。
(具体以 蚂蚁金服开发平台-文档中心 提供的 为准)
回调地址如何设置
如何设置回调地址,并可了解授权回调地址、应用网关、同步回调地址、异步回调地址四者的区别。
1、 授权回调地址:在应用中进行设置,授权时使用,在第三方授权或用户信息授权链接中配置的redirect_uri的值必须与此值保持一致;
2、 应用网关:在应用中进行设置,用于接收支付宝异步通知,例如口碑开店、生活号;
3、 同步回调地址:支付接口请求时设置的return_url参数,主要用于网站支付接口支付成功后的同步页面跳转;
4、 异步回调地址:支付接口请求时设置的notify_url参数,主要用于判断交易状态,如交易是否成功。
同步参数和异步参数解析说明详见 点击进入
注:(1)授权回调地址和应用网关都是在应用中设置的,并且在应用中分别都只能设置1个;
(2)同步回调地址和异步回调地址在支付
通知url必须为直接可访问的url,不能携带参数 异步接收微信支付结果通知的回调地址 不能携带参数。 回调地址后是否可以加自定义参数 同步回调地址 异步回调地址 return_url和notify_url的区别的更多相关文章
-
支付回调地址 同步回调地址 异步回调地址 return_url和notify_url的区别
[微信支付]JSAPI支付开发者文档 https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_16&index=10 退款结果通知 ...
-
微信支付没有结果通知,notify_url参数的接口没有收到微信支付结果通知
在微信支付统一下单的时候需要填一个notify_url参数用于处理微信支付结果通知 但是,有时候我们发现我们设置的这个接口收不到微信请求.原因有一下几个,大家一一对照,也欢迎补充. 1. url是否可 ...
-
支付宝开发中return_url和notify_url的区别分析
在处理支付宝业务中出现过这样的问题,付费完成后,在支付宝跳转到商家指定页面时,订单状态已经更新,通过调试发现是支付宝先通知notify_url,完成了订单状态. 支付宝return_url和notif ...
-
PHP 进行支付宝开发中return_url和notify_url的区别分析
在支付宝处理业务中return_url,notify_url是返回些什么状态呢,我们要根据它来做一些处理就必须了解return_url,notify_url的区别,下面我就来给大家介绍; 一.问题描述 ...
-
***php进行支付宝开发中return_url和notify_url的区别分析
本文实例分析了php进行支付宝开发中return_url和notify_url的区别.分享给大家供大家参考.具体分析如下: 在支付宝处理业务中return_url,notify_url是返回些什么状态 ...
-
java使用AES-256-ECB(PKCS7Padding)解密——微信支付退款通知接口指定解密方式
1.场景 在做微信支付退款通知接口时,微信对通知的内容做了加密,并且指定用 AES256 解密,官方指定的解密方式如下: 2.导包 <!-- https://mvnrepository.com/ ...
-
return_url和notify_url的区别
页面跳转同步通知页面特性(return_url特性) (1) 买家在支付成功后会看到一个支付宝提示交易成功的页面,该页面会停留几秒,然后会自动跳转回商户指定的同步通知页面(参数return_url ...
-
.NET开发微信小程序-接收微信支付回调数据
获取微信支付传回来的数据 1.MVC控制器 /// <summary> /// 付款返回的数据 /// </summary> /// <returns></r ...
-
php对微信支付回调处理的方法(合集)
支付完成后,微信会把相关支付结果和用户信息发送给商户,商户需要接收处理,并返回应答. 对后台通知交互时,如果微信收到商户的应答不是成功或超时,微信认为通知失败,微信会通过一定的策略定期重新发起通知,尽 ...
随机推荐
-
ASP.net解析JSON例子
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
-
XidianOJ 1172 Hiking
题目描述 BlacKin and GKCY are going hiking together. Besides their personal items, there are some items ...
-
关于VSTO调用Excel后进程无法退出的解决方案:
VSTO的Excel对象模型提供了托管代码对Excel的操作.但是它的实现时通过RCW(Runtime Com Wrapper)实现的,所以无法完全按照托管代码的运行方式操作.COM的资源释放时通过引 ...
-
Print2flash在.NET(C#)64位中的使用,即文档在线预览
转:http://www.cnblogs.com/flowwind/p/3411106.html Print2flash在.NET(C#)中的使用,即文档在线预览 office文档(word,ex ...
- Altium Designer中默认取消重复画线的选项
-
32位机器的LowMemory
今天在和供应商交流的过程中,被严重鄙视了,竟然认为我连"LowMemory"都没有听说过.感觉很郁闷,好歹我也搞过一段时间memory Management,怎么可能连Lo ...
-
优化关键渲染路径CRP
什么是关键渲染路径? 从收到 HTML.CSS 和 JavaScript 字节到对其进行必需的处理,从而将它们转变成渲染的像素这一过程中有一些中间步骤 浏览器渲染页面前需要先构建 DOM 和 CSSO ...
-
js 变量作用域
例子 <script> var a = "heh" function findLove(){ console.log(a); function findforyou() ...
-
编写你的第一个 Java 版 Raft 分布式 KV 存储
前言 本文旨在讲述如何使用 Java 语言实现基于 Raft 算法的,分布式的,KV 结构的存储项目.该项目的背景是为了深入理解 Raft 算法,从而深刻理解分布式环境下数据强一致性该如何实现:该项目 ...
-
Bytom矿池接入协议指南
矿机配置 https://gist.github.com/HAOYUatHZ/a47400bde4a138825faef415387b532c 固件升级 https://service.bitmain ...