`
chenxueyong
  • 浏览: 336234 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

支付宝常见问题解决方案

阅读更多

支付宝常见问题解决方案

ILLEGAL_ARGUMENT错误提示

 

这个是参数设置有误.

开发文档上有说明,不能为空的都不能为空.如果有一个是空的都会出现这种情况

 

================================================================================

HAS_NO_PRIVILEGE错误提示

 

该错误提示的是,您没有使用该接口的权限,那么登录自己的支付宝账户,商家服务,查看实物交易服务或者虚拟物品交易服务,如果没有申请,请立刻申请并且当时开通。

实物交易服务地址为

https://www.alipay.com/cooperate/apply_standard_security_trade_service_success.htm

虚拟交易服务地址为

https://www.alipay.com/cooperate/apply_digi_goods_security_trade_service_success.htm

==================================================================================

ILLEGAL_SIGN错误提示

 

该错误的引起因素有好几点:

1、传递的参数有空值。在支付宝的支付请求url中,某个参数是空值。这样空值在经过md5签名以后,比对会报错,所以请注意您传递过来的url中无空值。建议检查您购物车的支付宝代码,例如:subject="shop"

 

而非subject= ""

 

2、程序中安全校验码填写错误(请务必保存好该码,泄漏出去有可能被人伪造消息)。在您拿到不同测试中都有一个key的参数,该参数代表支付宝的安全校验码。从账户内复制过来的时候,会多余空格,请消息检查。例如某一个用户的keykXXXXXXXXXXXXXXXXXXXXXXXXXXXati,复制到程序中key=

kXXXXXXXXXXXXXXXXXXXXXXXXXXXati ”多了空格的。

 

3、中文编码的问题。不同网站采用不同的中文编码。有utf-8.gbk,iso-8859-1等,而程序中md5对中文签名会不一样,造成显示该错误。现asp的程序没有直接utf-8编码的md5PhpjspNet程序都是支持该编码的,您可以通过支付接口的  _input_charset = utf-8  参数设置制定的字符集,并且我们返回通知也会使用该字符集,解决乱码的问题。

 

 

======================================================================

ILLEGAL_SIGN错误提示

 

1.建议您使用支付宝提供的事例程序中的函数进行签名。

 

2.检查并确保协议参数中的partner和签名用的安全校验码没有错误。

 

3.若签名函数由自己开发,请检查待签名前排好顺序的签名串是否按照字母序排序。

 

4.签名时使用的字符集编码是否有问题,例如:您系统默认字符集编码为UTF-8,传递到支付宝时请指定

 

_input_charsetUTF-8

 

5.提交到支付宝的地址请使用https://www.alipay.com/cooperate/gateway.do ,如果使用

 

http://www.alipay.com/cooperate/gateway.do 的在表单POST

 

支付宝服务器会做一个到https的跳转,转到https接口时POST传递过来的参数会丢失。

============================================================================

TRADE_NOT_ALLOWED_PAY错误提示

 

原因: 提交的定单号重复,提交到支付宝页面的外部商家定单号(out_trade_no)必须是唯一的,可以采用id+日期+随机数 保证唯一

 

=========================================================================

ILLEGAL_SERVICE错误提示

 

该错误是指出,创建出来的支付urlservice参数错误,该接口不属于支付宝开发的接口类型。

现在支付宝开放接口,标准双接口交易。service=trade_create_by_buyer

                     即时到账交易:service=create_direct_pay_by_user

其他特殊交易service参数值,在对应接口文档中“输入参数”表格,“说明”栏目中都可以找到

 

===========================================================================

ILLEGAL_PARTNER错误提示

 

Partner也就是支付宝商家合作id没有正确填写,或者填写错误,注意复制下来的时候不能含有空格之类的字符

===========================================================================

BUYER_SELLER_EQUEL错误提示

 

表示您,在支付页面,使用的付款账户和收款账户是一样的。即:买家、卖家一致。

等于您用A账户给,A账户付款,这样是不正确的。

===========================================================================

TOTAL_FEE_OUT_OF_RANGE错误提示

 

属于交易总金额超出范围,检查price或者total_fee的值是否超出支付宝有允许的范围。一般情况下,允许创建“标准交易接口”最大50000单笔。“即时到帐接口”无这样限制

============================================================================

SELLER_NOT_EXIST错误提示

 

卖家帐户不存在。也就是说程序中seller_email的复制支付宝email在支付宝系统中不存在。

可以使用下列方法验证:

https://www.alipay.com/trade/i_credit.do?email=XXXX@XXX.com

注明:XXXX@XXX.com 为您想要验证的账户

===========================================================================

ILLEGAL_ARGUMENT错误提示

 

这个错误产生的原因,官方的技术文档表述很简单参数格式有问题,我在这里具体分析一下,有三种可能

 

1) 商家配置原因:商家没有配置商户MAIL,MD5安全校验码和合作者ID

2) 订单商品原因:商品名称单价数量格式不正确,比如价格超出范围或者数量不是整型等

3) 客户的原因:客户填写的信息格式有问题

在测试环境中,一般的原因是12,在实际生产环境中,一般是原因3--客户原因,

下面具体分析一下客户原因:

a) 电话不足6位,或者手机不足13

b) 电子邮件不符合Maill的规范.

c) 邮编必须是半角数字,且不含有其他字符(尤其注意邮编不能全角数字,大部分都是这个原因造成的错

 

误注:半角:123456,全角:123456)

d) 收货人姓名必须包含2个以上中文字符

e) 地址必须包含4个以上中文字符

 我碰到的问题是:单价与金额等只能保留两位小数,而SQL出来的moneysmallmoney都是四位的,注意改了就是

 

 

 

怎样编辑(批量付款)模板

手动编辑方式:在您编辑批量付款文件时,推荐使用文本编辑器进行编辑。
如:记事本(),editPlus,UltraEdit,等编辑器。

使用文本编辑器可以保证文件中数据的准确性。
如果您希望使用EXCEL进行编辑,请注意以下几点:
 
1.
EXCEL的单元格中如果输入一个很大的数,如1234567897644,他会自动以科学记数法来显示,但是现在不让他用科学记数法来显示,怎么做呢?
选中数据,单击"格式"菜单中的"单元格"命令,在弹出的"单元格格式"对话框中,"数字"选项卡,左侧选中"数值",小数位数为“0”直接"确定"即可.

2.即使你没有任何改动,仅仅使用EXCEL打开文件并进行保存的操作,
 
原始文件会发生以下变动:(此情况需要使用文本编辑器才能发现)

  原始数据:   日期,总金额,总笔数,支付宝帐号(Email)

              20071206,300,3,liuzhongsheng@163.com

  保存后数据: 日期,总金额,总笔数,支付宝帐号(Email),,,,,,

             20071206,300,3,liuzhongsheng@163.com,,,,,,

  此变化为EXCEL造成,所以推荐您在使用EXCEL保存后再使用文本编辑器进行修改。

 

 

AlipayDuplicateFormSubmitException错误提示

出现这个错误的原因:客户提交到支付宝页面后,进行了后退操作,或重复提交造成的。还有一种情况就是,客户的网站页面用的是iframe框架调用的支付宝页面。

 

 

 

 

ILLEGAL_FEE_PARAM错误提示

属于非法交易金额格式,请检查程序中price或者total_fee的值是否规范

 

 

 

TOTAL_FEE_LESSEQUAL_ZERO错误提示

 

属于交易总金额小于等于0price或者total_fee不能小于等于0

 

 

客户网站订单号,如何传递给支付宝,参数如何设置

每个客户的购物网站上,都有自己的订单流水号,那么可以通过支付宝接口的参数out_trade_no,将客户网站的订单流水号传递给支付宝,以作对账之用。

在支付宝程序中,out_trade_no,一定是变量,不可以是一个定值。
例如,客户网站订单变量是 <%=dingdan%>,那么在参数设置中out_trade_no = dingdan

而不是out_trade_no = dingdan(其他参数设置同理)

 

 

 

 

支付宝的交易通知两种方式和两者的区别

现在支付宝的通知有两类。 

A服务器通知,对应的参数为notify_url,支付宝通知使用POST方式

B页面跳转通知,对应的参数为return_url,支付宝通知使用GET方式
(通知地址不需要像以前一样去账户内设置,而是由客户在支付的时候通过参数传递给我地址。例如 notify_url=http://www.xxx.com/notify_alipay.asp  注意www.XXX.com是您网站的域名,也可以用ip地址代替。对于服务器通知,ip地址一定是公网的,私有地址(例如10.2.1.1或者192.168.1.1)支付宝无法通知到客户端)

 

支付宝通知接口如何工作,工作的步骤是怎样的

支付宝的两个通知接口都使用同样的工作原理,两个工作步骤:

 

1、对支付宝的通知过来的消息做验证,得到true或者false的结果。

//String alipayNotifyURL = "https://www.alipay.com/cooperate/gateway.do?service=notify_verify"

           String alipayNotifyURL = "http://notify.alipay.com/trade/notify_query.do?"

                       + "&partner="

                       + partner

                       + "¬ify_id="

                       + request.getParameter("notify_id");

              String sign=request.getParameter("sign");

如上java程序,使用https或者http的查询地址。传递partnernotify id去验证消息的结果。(详细请见文档中的。“http通知验证接口”)

 

2、通过验证接口,得到正确的true结果,然后对传递过来的参数进行签名比对。(签名机制同支付程序)。

比对签名通过,并得到正确的验证结果true。接着判断交易状态(红字其他交易状态在支付宝账户内可以选择,见“通知环节有哪些,为什么我支付以后不给我通知

”),再在页面上打印出成功消息。或者失败消息(详情见“Notify响应给支付宝的消息是什么”)例如

If mysign=request.Form("sign") And ResponseTxt="true" Then  

 If  request.Form("trade_status")="TRADE_FINISHED" Then

(客户的发货程序,更新订单)

response.write "success"

End If

Else

response.write "fail"

End If

 

3、注意,在返回success之前作客户网站的业务参数,比如发货,更新订单。

为什么我总收不到支付宝发出的通知

1.确认您使用的接口是用notify_url还是return_url

 

2.notify_url为服务器通知,支付宝可以保证99.9999%的通知到达率,前提是您的网络通畅。


3.return_url
为网页重定向通知,是由客户的浏览器触发的一个通知,若客户去网银支付,也会受银行接口影响,由于各种影响因素特别多,所以该种类型的通知支付宝不保证其到达率。
买家付款成功后,会跳到 return_url所在的页面,这个页面可以展示给客户看,这个页面只有付款成功才会跳转,并且只跳转一次..
notify_url:
服务器后台通知,这个页面是支付宝服务器端自动调用这个页面的链接地址,这个页面根据支付宝反馈过来的信息修改网站的定单状态,更新完成后需要返回一个success给支付宝.,不能含有任何其它的字符包括html语言.
流程:买家付完款(trade_status=WAIT_SELLER_SEND_GOODS)--->支付宝通知notify_url--->如果反馈给支付宝的是success(表示成功,这个状态下不再反馈,如果不是继续通知,一般第一次发送和第二次发送的时间间隔是3分钟)
剩下的过程,卖家发货,买家确认收货,交易成功都是这个流程.

 

 

通知返回接口,在收到支付宝通知以后,是否再返回给支付宝消息

 

需要。此机制只针对notify_url,对于return_url收到支付宝通知以后,不必要响应给支付宝。

notify_url收到支付宝通知后,请按照自己需要的业务逻辑处理,并返回一个不包含任何HTML标签的页面,里面仅包含success或者fail的文本串,注意请不要包含任何其他的字符,如空格等。对应的success或者fail的含义请看下表:

返回结果

结果说明

success

处理成功,结束发送

fail

处理失败,重新发送

 

特别注意:

在接收到支付宝服务器的通知以后,请使用HTTP通知验证接口 校验该通知的合法性,以确保你的系统的后续操作的正确性

 

 

 

 

 

 

支付宝老接口代码

嘿嘿。。我这有珍藏版的接口:
pay_to:
<%
'/***************************************************************************************************************
'* FileName: alipay_Notify.asp
'* Description:
Asp文件为Asp网店集成支付宝最新payto接口的示例代码,用于接收支付宝传递过来反馈通知(买家已付款请卖家发货、买家已收到货物交易结束、支付宝测试商户接

分享到:
评论

相关推荐

    百威常见问题解决方法

    百威软件常见问题集 9000V6版老版本进入某些单据时提手 工删除机号

    RuoYi APP 移动端框架,基于uniapp+uniui封装的一套基础模版

    RuoYi App 移动解决方案,采用uniapp框架,一份代码多终端适配,同时支持APP、小程序、H5!实现了与RuoYi-Vue、RuoYi-Cloud完美对接的移动解决方案!目前已经实现登录、我的、工作台、编辑资料、头像修改、密码修改...

    bbsmax:BBSMAX 5 是一款基于ASP.NET技术的开源论坛程序. BBSMAX 5 内建支持博客, 相册, 微博等常见SNS功能, 为在Windows服务器上架设社区网站提供完美的解决方案

    BBSMAX 5 内建支持博客, 相册, 微博等常见SNS功能, 为在Windows服务器上架设社区网站提供完美的解决方案.更新日志2011年2月10日(5.0.3.0210)1、修复了添加板块错误的问题2、修复了管理员察看“分享”类型的举报...

    bbsmax 5.0.3.0210.zip

    BBSMAX 5 内建支持博客, 相册, 微博等常见SNS功能, 为在Windows服务器上架设社区网站提供完美的解决方案. 更新日志 2011年2月10日(5.0.3.0210) 1、修复了添加板块错误的问题 2、修复了管理员察看“分享”类型...

    乐兔淘购物分享系统(淘宝客导购) v2.9.zip

    乐兔淘购物分享系统是一款基于PHP MYSQL技术架构的购物分享社区系统,经过2年精心研发与升级,现可以为大中型网站以及个人站长提供分享购物社区系统的解决方案,并得到一致好评。 乐兔淘购物分享系统它综合当下热门...

    Golang标准库的示例:Golang标准库。对于程序员而言,标准库与语言本身同样重要,它好比一个百宝箱,能为各种常见的任务提供完美的解决方案。以示例为例驱动的方式讲解Golang的标准库

    《 Go语言标准库》 Golang标准库实例对于程序员而言,标准库与语言本身同样重要,它好比一个百宝箱,能为各种常见的任务提供完美的解决方案。以示例驱动的方式讲解Golang的标准库。注意:总体上,标准库文档并没有...

    [计算机毕业设计]微信小程序基于ssm平台开发的电器维修系统小程序--论文(附程序源码和开发文档).rar

    5. 维修知识库:提供丰富的电器维修知识,帮助用户了解常见故障及解决方法,提高自我解决问题的能力。 此外,该系统采用SSM框架搭建,具有良好的扩展性和可定制性,可根据用户需求进行二次开发,满足不同场景下的...

    [互联网-我国-金融]浅析当前我国互联网金融发展.docx

    在介绍互联网金融的定义后结合具体的实例指出互联网金融的发展过程中所遇到的问题,最后给出了关于相关的解决方案。希望能够对我国互联网金融的积极发展起到一定的引导作用。 关键词:互联网金融;问题;建议 一、...

    BBSMAX 5.0.3.0210.rar

    BBSMAX内建支持博客, 相册,微博等常见SNS功能,为在Windows服务器上架设社区网站提供完美的解决方案。BBSMAX拥有世界一流的用户体验,最先进的论坛管理方式,卓越的访问速度和负载能力... BBSMAX 5.0.3.0210 ...

    bbsmax论坛官方版 v5.0.3.0210

    BBSMAX 5 内建支持博客, 相册, 微博等常见SNS功能, 为在Windows服务器上架设社区网站提供完美的解决方案. 更新日志 2011年2月10日(5.0.3.0210) 1、修复了添加板块错误的问题 2、修复了管理员察看“分享”类型的...

    小程序倒计时深究

    就可以解决刷新后计时闪动的问题了,或者在在tab页面,运用 onHide 周期 进行 clearTimeInterval清空 , 在 非tab页面,运用onUload() 周期 进行 clearTimeInterval清空,百度都可以找到类似解决方案,其中

    asp.net知识库

    常见的 ASP.NET 2.0 转换问题和解决方案 Asp.Net2.0无刷新客户端回调 体验.net 2.0 的优雅(1) -- 异步WebService调用 ASP.NET 2.0页面框架的几点新功能 ASP.NET 2.0 中收集的小功能点 asp.net2.0中的webpart使用...

    Shop7z网上购物系统普及版 商城网站源码

    电子商务项目规划、创意、运营,提供全面的基于互联网解决方案的应用服务,产品用户遍及全国各地及部分海外地区,如今,Shop7z商城系统已成为电子商务开发商领域首屈一指的品牌,是众多企业、个人网上开店的首选软件...

    电子商城系统

    后台常见功能模块 1、商品管理:包括后台商品库存管理、上货、出货、编辑管理和商品分类管理、商品品牌... 11、权限管理:基于模块化的用户、角色、操作以及约束的安全技术解决方案。支持各个模 块的各种操作的权限分配。

    大型分布式网站架构设计与实践.带目录书签.完整版.rar

    《大型分布式网站架构设计与实践》既可供初学者学习,帮助读者了解大型分布式网站的架构,以及解决问题的思路和方法,也可供业界同行参考,给日常工作带来启发。 作者简介 陈康贤,淘宝花名龙隆,淘宝技术部研发...

    shop7z-jb51

    电子商务项目规划、创意、运营,提供全面的基于互联网解决方案的应用服务,产品用户遍及全国各地及部分海外地区,如今,Shop7z商城系统已成为电子商务开发商领域首屈一指的品牌,是众多企业、个人网上开店的首选软件...

    Shop7z网上购物系统普及版 网上购物系统 asp商城网站源码 商城网站源码

    电子商务项目规划、创意、运营,提供全面的基于互联网解决方案的应用服务,产品用户遍及全国各地及部分海外地区,如今,Shop7z商城系统已成为电子商务开发商领域首屈一指的品牌,是众多企业、个人网上开店的首选软件...

    网趣网上购物系统HTML静态版V2012

    减少冗余代码的产生,支持整站关键词,细分到单个商品、网站大、小、子分类、商城新闻、资讯等关键词自设功能,经过多次优化在搜索引擎优化上有了更大的飞跃,是客户网上开店最佳的解决方案。系统还支持在线QQ、MSN...

    快乐游戏装备交易系统2006

    帮助:提供网站常见问题解决方案。 8、点卡专卖 历史消费,订单查询,游戏卡提取,在线订购 9、页公告/新闻系统 发布站点公告,行业新闻。首页显示,新闻搜索,后台管理添加修改删除。  10、网站流量统计系统 ...

    Shop7z网上购物系统普及版 v2.8.rar

    电子商务项目规划、创意、运营,提供全面的基于互联网解决方案的应用服务,产品用户遍及全国各地及部分海外地区,如今,Shop7z商城系统已成为电子商务开发商领域首屈一指的品牌,是众多企业、个人网上开店的首选软件...

Global site tag (gtag.js) - Google Analytics