关于支付宝批量转账接口,我觉得有写点什么的必要了,毕竟在里面走了很多弯路%>_<%,而且网上关于这个的资料少之又少,甚至有人都不知道有这个,宝宝真是快哭了(;′⌒`),下面我来一一详细介绍。

1.申请接口

申请支付宝批量转账接口,现在支付宝的这个服务已经下架了,所以是找不到这个签约的,需拨打 0571-88158090 这个电话去人工申请该接口。然后,他会问你需要的是哪一种服务,一种是在他的平台上,可以上传批量打款名单文件进行批量打款的,另一种是提供一个接口给你,让你可以在自己的网站上就实现批量打款。当然,我选的是第二种,因为第一种就太简单了,根本不会遇到很多问题O__O "…。当然,两种服务,支付宝都是会收取打款手续费的,一笔按照打款金额的0.5%手续费收取,不足1元的按照1元收取,上限为25元。一般大概会有五个工作日,能拿到这个接口。拿到接口之后(登录商家账户,会看到签约产品里面有一个批量付款到支付宝,说明接口拿到了),可以到支付宝文档中心去下载demo,地址:https://doc.open.alipay.com/doc2/detail.htm?spm=a219a.7386797.0.0.I0MkUm&treeId=64&articleId=103569&docType=1

2.使用接口

2.1后台方面

得到下载包后,里面有多种语言的demo,我使用的是batch_trans_notify-JAVA-UTF-8。拿到这个demo之后,很简单,里面的东西都不要动,只需要修改这几个地方:

com.alipay.config.AlipayConfig文件

partner属性即是你的合作身份者ID---PID

key属性即是商户私钥---安全检验码

登录商家账户有一个“查看PID、Key”的按钮,可以看到自己的PID和Key,对于Key,需注意几点:

1.批量转账支持MD5加密的数据签名,也支持RSA加密的数据签名(当然,支付宝提供给我们的demo默认只有MD5加密)

2.“查看PID、Key”看到的"默认加密"即是MD5私钥,对于我们的demo,把看到的这个私钥填入key即可完成AlipayConfig的所有配置^_^

3.页面下面还有个“RSA加密,查看密钥即是查看RSA公钥(支付宝提供给我们RSA密钥生成器,用于生产公钥与私钥,相关操作详见https://doc.open.alipay.com/doc2/detail.htm?spm=a219a.7629140.0.0.lOJgU5&treeId=64&articleId=104740&docType=1),后面还有个“支付宝公钥。对于RSA加密,请将key改为private_key,并填入RSA密钥生成器生产的私钥,并在下面添加一个字符串“ali_public_key”,值为上面说到的“支付宝公钥”。并且,在最后一行将sign_type改为RSA。最后,需要找到Base64.java和RSA.java两个文件才能完成RSA签名,而demo里面是没有的,这两个文件,大家可以在支付宝实时到账demo里面去找,那里面有^_^。

2.2前台方面

demo里面有三个jsp页面:

index.jsp,负责填写相关数据(具体格式demo注释有写)

alipayapi.jsp,负责处理index.jsp传入的数据,并调用AlipaySubmit文件相应方法,生成一个html格式的form表单并自动提交到支付宝。

notify_url.jsp,支付宝异步通知的页面,需要在alipayapi.jsp页面配置notify_url变量,如果,你的项目不在外网上面,支付宝访问不到你的这个页面,你可以使用花生壳,使支付宝能够访问到你的页面。关于花生壳,不懂的就自己百度吧^_^。

下面分别介绍这三个页面:

A-index.jsp:

付款账号即是你的支付宝账户,

付款账户名即是你的商户名字

付款当天日期,new SimpleDateFormat("yyyyMMdd").format(new Date())当前日期

批次号,new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())当前时间的时间戳

付款总金额,由于订单是用表格批量显示的,所以使用js操作dom,获取勾选状态的所有订单的支付金额之和

付款笔数,同上,获取勾选状态的所有订单数

付款详细数据,仍然是使用js进行动态拼接勾选状态的订单的相关属性。

注意:支付宝工作人员说,使用接口的话是无法进行文件上传的。所以尽管demo里面有上传文件的方法,但是还是没有什么用处的。因此,就出现一个问题,那就是,将上面说到的AlipaySubmit文件生成的html格式的form表单提交到支付宝会存在一个Request Entity Too Large问题,也就是“请求中提供的数据量超过容量限制。因为无法上传文件,因此,如果像支付宝所说的那样,一次最多可以批量处理1000条是无法真正做到的,因为经过测试,在备注说明为空的情况下,都只能批量上传大概100条,大概是4500-5000个字节╮(╯▽╰)╭。

B-alipayapi.jsp:

获取index.jsp传来的值,建议将付款账号和账户名存放在AlipayConfig文件中,这样就不用每次转账都要输入这两个值了。

该页面会把传来的值放入一个叫做sParaTemp的Map中,然后调用AlipaySubmit.buildRequest方法,将sParaTemp以相应的加密方式(MD5/RSA)加密为数据签名,并放在生成的html格式的form表单的一个名叫sign的input中。当然,这些我们不去关心。buildRequest方法推荐使用post提交方式,也就是其第二个参数。而该方法的第三个参数是生成的html格式的form表单的提交按钮的value值(嘿嘿,说得有点长^_^),当然,这个提交按钮是display:none不可见的,所以这个东西要不要都无所谓的,反正是自动提交。

注意:该系统只能在IE下才能实现转账功能,这是因为支付宝还不支持其他第三方浏览器进行转账。(如果浏览器为极速模式,那么转账时浏览器会自动切换成IE)
          如果你的页面嵌有iframe,且原窗口跳转到alipayapi.jsp(window.location.href或者a标签跳转)

对于单笔转账,如果浏览器为极速模式,那么转账时浏览器不会自动切换成IE,所以,对于单笔交易,请切换为IE,再点击批量转账,否则可能出现“当前操作环境不支持支付宝控件而导致不能转账的问题。
               对于多笔转账(批量),请使用极速模式,浏览器在转账时会自动切换为IE,否则,则可能出现批量转账申请提交失败错误。

故,推荐使用新窗口跳转到alipayapi.jsp,以上问题就都不会出现了。---window.open或者a标签加target

C-notify_url.jsp:

异步通知页面,一般在输入密码、点击转账后2-5分钟,支付宝会根据之前设定的notify_url找到该页面,进行异步通知。异步通知,即是支付宝自动请求该notify_url,并将转账处理结果带入到该页面,该页面进行相应处理后,进行out.println("success")输出,支付宝便知道你已经收到了它的通知,便不再继续通知(否则会每隔一段时间会继续通知。而整个过程都是异步的,即不会造成任何程序或页面的阻塞、等待。

相应的通知结果参数在https://doc.open.alipay.com/doc2/detail.htm?spm=a219a.7629140.0.0.5n5tQs&treeId=64&articleId=104804&docType=1可查阅。主要参数为success_details,fail_details,batch_no,首先AlipayNotify.verify(params)方法会将返回的所有参数params进行数据签名,以确认是否是支付宝发来的消息,确认成功后,我们就可以在下面写上我们自己的业务逻辑代码。

务逻辑代码如:

String batch_no=request.getParameter("batch_no");
  if(!batch_no.equals(application.getAttribute("batch_no"))){//判断是否已对该批次做过处理(避免支付宝重复发送导致的重复处理)
       application.setAttribute("batch_no",batch_no);
       //写上你的业务逻辑,如将成功的订单数据库状态改为成功,失败的改为失败
   }
  out.println("success");//请不要修改或删除

注意:对于success_details和fail_details,在该demo下可能会出现中文乱码的情况,大家可以先设置request.setCharacterEncoding("gbk");然后再获取success_details与fail_details。

到这里,整个过程就完工了!下面是我做的一个小后台demo,前端使用的是H-UI框架,后台是servlet+mybatis。有需要源码的朋友,请移步:http://download.csdn.net/detail/localhost01/9604148

支付宝批量转账接口使用全过程 一一介绍相关推荐

  1. 支付宝批量转账系统解析

    很多淘宝商家.免单活动再给用户支付宝返款的时候都是纯手工支付宝转账,此种操作方法效率特别低, 主流的返款模式都是使用个人支付宝点对点的专款.好处是方便,灵活,个人无需申报.坏处是个人支付宝账户非常容易 ...

  2. 对接支付宝单笔转账接口

    对接支付宝单笔转账接口 功能介绍 接入准备 调用支付宝api需要以下参数: 项目引入 操作流程 创建小程序 配置小程序 集成配置 SDK 助手 详细操作流程 获取appId 获取证书 获取AES密钥 ...

  3. 支付宝批量转账软件详解

    很多淘宝商家.免单活动再给用户支付宝返款的时候都是纯手工支付宝转账,此种操作方法效率特别低,为了解决大家支付宝批量转账的需求,易推客支付宝批量转账系统应运而生. 一.支付宝批量转账系统介绍 本系统无需 ...

  4. 批量付款到户接口,批量转账接口

    这里所用到的接口是支付宝官方的 "转账到支付宝账户" 接口,只有企业支付宝才可以申请. 可以联系支付宝小二或者省心返平台客服帮你申请开通,免费的,当天就可以开通. 下面所说的,假设 ...

  5. 店群批量返款工具,最新支付宝批量转账的解决方案-收付无忧系统

    淘系.拼多多.抖店等卖家涉及需要 批量返款的场景较多,如"BD返款.好评返现.免单活动批量转账" 等业务场景,电商人一天够忙的了,批量返款一直是困扰卖家的大问题. 商家批量退款.退 ...

  6. PHP 支付宝 “(单笔转账接口)转账到支付宝账号”

    目录 前言 一.服务层 二.控制层 1.控制层 2.接口返回参数实例 前言 单笔转账接口 | 网页&移动应用 准备: 1:应用的证书(证书申请和配置可以参考我另一篇分享"支付宝 '应 ...

  7. java 对接支付宝单笔转账接口

    证书模式及非证书模式转账 查询证书路径 public String queryPath() throws FileNotFoundException, ServerException {String ...

  8. 如何签约支付宝单笔转账接口!

    最近支付宝正在升级单笔转账到支付宝账户的接口,暂停了签约.

  9. 支付宝批量转账到零钱

    1. 服务集成灵活:可集成到商户自身业务系统,无需登录支付宝. 2. 资金实时到账:付款资金实时到账,方便安全快捷. 3. 支持大额支付:日.月限额高,支持动态额度提升. 4. 实时到账通知:收款方可 ...

  10. 网页支付宝批量转账被限制,附解决方案

    不少用户反馈,在支付宝网页版进行批量转账时,可能会提示"PERMIT_NON_BANK_LIMIT_PAYEE 当前操作存在风险,不支持转账,如有疑问",一句话就是"支付 ...

最新文章

  1. tomcat启动后 项目运行缓慢,要几十到几百秒不等 怎么样./startup.sh 运行加快
  2. 引用 提高开发水平的几项必备技术
  3. 更改VMWare 虚拟机的硬件设置
  4. 某程序员leader吐槽自己的工作就是合并周报!撕逼扯淡!跪舔领导!月薪五万却非常焦虑!...
  5. pb连接多个数据库 有关问题2
  6. ITK:重视Valued图像的区域最小值
  7. INFO:InstallShield工程中如何将安装包集成的Prerequisites安装文件压缩到一个Setup.exe中...
  8. 第二阶段冲刺第八天,6月7日。
  9. GlobalAuthenticationConfigurerAdapter.class 整合activiti 工作流报错
  10. 深度学习笔记(一)——M-P模型(神经元模型)
  11. ICCV2021 多目标跟踪(MOT)汇总
  12. 95后00后音乐人群已成原创音乐创作主力军;全球游戏品类App留存率下滑10% | 美通社头条...
  13. C++ 全排列 123456789 1 2 3
  14. 计算机824难不难,南京理工大学
  15. 设计模式之工厂方法模式(附源码)
  16. 纯CSS 写动画背景,高仿蚂蚁庄园小鸡仔
  17. Web网页设计之HTML_2. HTML元素 简单文本排版
  18. 我在帝都买房后,又开始思考怎样赚更多的钱了。
  19. 搭建Remix IDE本地开发环境
  20. jar文件打不开解决的办法

热门文章

  1. android 9.0 开机动画,小米9开机动画安装器
  2. 看看别人用什么:最佳网管工具点评
  3. 计算机组成原理(第三版)唐朔飞-第十章控制单元的设计-课后习题
  4. 硬盘数据丢失原因?硬盘数据恢复方法
  5. MIDL2011报错。
  6. 对比较器的使用方法的研究
  7. [应用代码] android 自动接听电话和挂断 (适合目前所有版本)
  8. 图书管理系统sql语句
  9. chrome最新版本下载
  10. 当年上大学时,编程老师让我们用html+CSS实现一个天猫官网