前言

前端时间自己开发了一个drupal的支付宝模块,现在整理一下过程,因为支付宝官方网站提供的接口及文档都是新接口的,而且使用新接口的过程比较麻烦一点,所以整理一下

1.支付宝的账号必须经过企业资格的审核才可以进行正式环境的支付。不过不是企业也可以过一把支付宝开发的瘾,因为支付宝提供了沙箱环境,供你(对,就是还不具备企业资格或者审查没通过的你)测试

2.支付宝新的开发接口和老的不太一样,以前只要有账号就行,现在必须申请“应用”才可以,一个账号可以申请多个应用,一个应用可以具有多个功能,比如“电脑网站支付”,“手机网站支付”等等

一、开发流程概览

1.只看官网文档就够了蚂蚁金服开放平台

2.下载PHP的SDK&demo

3.申请应用 OR 使用沙箱环境

4.生成应用私钥&应用公钥

5.配置config.php

二、具体实(kai)施(gan)

1.进入开放平台

百度“蚂蚁金服开放平台”,对,没错,就是叫这个名字,现在支付宝的开发接口都在这个开放平台上!这里有各种文档供你搜索和学习。

第一次使用的话,进入“文档中心”-》“开发文档”

这里有各种选择,总有一款适合你:

我们这里选择电脑网站支付:

如上图所示,左侧的菜单对应的内容,足够指导你了。不过我还是要继续bala······

下载php的sdk,单击左侧菜单“SDK&Demo”,下载php对应的文件:

下载之后的demo还不能直接使用,因为需要配置config.php文件:

2.申请应用 or 使用沙箱环境

登录“蚂蚁金服开放平台”之后,单击“开发者中心”

2.1 申请应用

登录之后,单击“开发者中心”-》“创建应用”,具体步骤参考支付宝官网文档:电脑网站支付快速接入,这里不再赘述

2.2使用沙箱环境

恩,没错,我只是一个屌丝程序员,不是企业或者个体工商户,所以没法申请一个正式的“应用”,因为2.1步骤里需要提交企业的资料才行。

所以我们就是用沙箱环境,恩,就是这么机智。

单击"研发服务"下的“沙箱环境”-》“沙箱应用”,配置应用公钥

接下来就需要生成密钥对,配置支付宝平台上的。支付宝提供了生成私钥、公钥的工具,很好操作。

2.2.1生成密钥

鼠标放到“RSA2(SHA256)密钥(推荐)”的图标上,就会出现提示:

单击生成方法,就会进入对应页面,下载工具,生成公私密钥。

2.2.2配置config.php

生成之后:

应用公钥配置到沙箱应用的RSA2对应的应用公钥里;

应用私钥配置到config.php的“商户私钥”;

沙箱应用的APPID复制到config.php的appid里;

沙箱环境的“支付宝公钥”配置到config.php的“支付宝公钥”里面;

config.php的“支付宝网关”需要改为沙箱应用的“支付宝网关”。

congfig的notify_url和return_url,主要是通过支付宝返回的数据,处理自己业务的接口。可以先不配置,因为目前已经可以成功请求支付宝的支付接口了。

三、配置之后,请求支付宝

1.config.php:

2.支付宝官方demo页面:

3.单击“付款”:

OK啦

---------------------------------------------------------------------------------------end-----------------------------------------------------------------------------------------------------------------------------

最后吐槽一下,沙箱环境的支付没法走通!

原因是:支付界面必须使用支付宝提供的产品“沙箱钱包”通过扫一扫支付,我们手机上正常的支付宝是没法扫一扫支付的,而且只提供Android版,见下图:

于是我去下载,但是我下载下来之后,必须注册新账号(类似于测试账号),但是一直注册不成功,打了支付宝客服咨询,然并卵,客服说他自己也不懂,不过客服的态度倒是挺好

---------------------------------------------------------------------补充一下,正式应用的支付界面------------------------------------------------------------

PHP开发支付宝之电脑网站支付--流程简介的更多相关文章

  1. 支付宝支付之扫码支付(电脑网站支付)、H5支付(手机网站支付)相关业务流程分析总结

    前言 在上一篇文章<微信支付之扫码支付.公众号支付.H5支付.小程序支付相关业务流程分析总结>中,分析和总结了微信支付相关支付类型的业务流程,这里作为与微信支付平起平坐不相伯仲的支付宝支付 ...

  2. 支付宝支付-PC电脑网站支付

    支付产品全面升级(更新时间:2017/05/05 ),若您使用的是老接口,请移步老版本即时到账文档. 支持沙盒环境的测试 此项目已开源欢迎Start.PR.发起Issues一起讨论交流共同进步 htt ...

  3. 支付宝手机网站支付流程(Node实现)

    前言 公司M站要接入支付宝,借机研究了一下支付宝的支付流程.毕竟,只有公司才能拿到支付接口权限. 主要参考文档: https://doc.open.alipay.com/doc2/detail?tre ...

  4. 支付宝:电脑网站沙箱测试(Java)

    1.下载电脑网站的官方demo: 下载地址:https://docs.open.alipay.com/270/106291/ 2.下载解压导入eclipse readme.txt请好好看一下. 只有一 ...

  5. 自己动手搞定支付宝手机Wap网站支付接口 FOR ECShop

    支付宝WAP网站版本的支付接口网上整合的比较少,看到很多网站在卖,顿觉无语. 主要是得自己查看支付宝官方提供的SDK中的开发文档. 支付宝sdk下载地址:https://doc.open.alipay ...

  6. 支付宝电脑网站支付 alipay.trade.page.pay

    只涉及支付接口 其他接口没有使用 支付宝官方文档:https://docs.open.alipay.com/270/105899/ 支付接口文档 https://docs.open.alipay.co ...

  7. Android开发---支付宝功能接口(支付功能)(转载!)

    最近在做一个关于购物商城的项目,项目里面付款这块我选的是调用支付宝的接口,因为用的人比较多. 在网上搜索了以下,有很多这方面的教程,但大部分教程过于陈旧,而且描述的过于简单.而且支付宝提供的接口一直在 ...

  8. laravel5集成支付宝alipay扫码支付流程(Laravel 支付解决方案)

    首先我们来探讨如何在Laravel应用中使用支付宝进行支付,对此,GitHub上有很多相关的包,其中最流行的两个包:Omnipay For Laravel 5 & Lumen 和 Larave ...

  9. java开发支付宝支付详细流程_demo的运行

    首先我要吐槽一下支付宝的开放平台简直就是一个迷宫,赞同的顶一下,下面我把要下载的地址给贴出来要不真不好找: 一.准备工作 1.签名工具下载 https://docs.open.alipay.com/2 ...

随机推荐

  1. notepad++常用操作梳理

    在  设置---管理快捷键   可以查询/重置快捷键.如下: 工作or学习中最长用到的操作: Ctrl+ALT-C:列编辑Ctrl+U:转换为小写Ctrl+Shift+U:转换为大写Ctrl+B:跳转 ...

  2. 安装php7

    ./configure  --prefix=/usr/local/php7.1.5 --with-curl --with-iconv-dir  --with-mysqli --with-openssl ...

  3. C语言奇淫技巧,字符串的三种表示方法,不会用不是合格的程序员

    1.在C语言中,是将字符串作为字符数组来处理的,字符串是逐个存放到数组元素中的 例如用一个一维的字符数组存放字符串"I am a boy.",如下代码: char c[12] = ...

  4. QuantLib 金融计算——数学工具之随机数发生器

    目录 QuantLib 金融计算--数学工具之随机数发生器 概述 伪随机数 正态分布(伪)随机数 拟随机数 HaltonRsg SobolRsg 两类随机数的收敛性比较 如果未做特别说明,文中的程序都 ...

  5. 语言模型预训练方法(ELMo、GPT和BERT)——自然语言处理(NLP)

    1. 引言 在介绍论文之前,我将先简单介绍一些相关背景知识.首先是语言模型(Language Model),语言模型简单来说就是一串词序列的概率分布.具体来说,语言模型的作用是为一个长度为m的文本确定 ...

  6. Openerp 修改 tree view 的列宽

    在 tree 的后边添加自定义css 列:“my_class" 然后在对应的css文件中,添加样式: 保存,重新刷新页面即可.

  7. ToolkitScriptManager vs. ScriptManager 关于“只能向页面中添加 ScriptManager 的一个实例”讨论

    在使用ASP.NET设计AJAX功能网页时,需要首先声明ToolkitScriptManager或者ScriptManager控件,这些全局的脚本核心控制,然后才能使用众多的AJAX控件.如果没有创建 ...

  8. Ubuntu 安装ftp

    Ubuntu 用vsftpd 配置FTP服务器 网上的文章好难懂啊..只想要简单粗暴,弄好能用就行啊,复杂的以后研究不行吗...折腾好久,其实弄出来能用不就这么点内容吗... 本文在Ubuntu Se ...

  9. 使用github oauth 出现 OpenSSL::SSL::SSLError - SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 解决

    A top level initializer is highly recommended to use: conf/initializer/tls_settings.rb OpenSSL::SSL: ...

  10. Java代码解决ElasticSearch的Result window is too large问题

    调用ElasticSearch做分页查询时报错: QueryPhaseExecutionException[Result window is too large, from + size must b ...