PHP支付接口教程,详解微信支付(三)

简介: 微信APP支付接口申请微信APP支付和其他支付接口最大的不同在于——申请方式无论是JS支付、PC支付还是WEB支付,都是用通过微信的公众进行申请的,但APP支付却是通过微信开放进行申请的。

微信APP支付

接口申请

微信APP支付和其他支付接口最大的不同在于——申请方式
无论是JS支付、PC支付还是WEB支付,都是用通过微信的公众进行申请的,但APP支付却是通过微信开放进行申请的。
开放申请微信支付的流程要比公众更复杂,需要验证的内容更多,还需要认证为开发者,一般来说,申请需要一个星期的时间。
还有更令人头疼的是,公众申请微信支付时需要申请一个商户账号作为收款账号,开放申请支付接口的时候又要再申请一个。也就是说,如果你的项目既有APP又有微信版或者PC版,那么一个项目里面会出现两个微信的收款账号。
很多客户对这个问题简直接受无能,为此特意咨询过腾讯客服,他们表示恩……就是这样的
所以,如果你的项目需要开发微信APP支付,请关注下面几点:

1. 一定要提前一周去申请接口
2. 一定要去微信开放申请
3. 一定要把整个申请流程走完

申请完之后我们需要添加一个移动应用
这里留意一下,其实微信登录微信分享也是在这里申请的。

img_dbbc974801e38a7649609e41f27bec42.jpe
PHP支付接口教程,详解微信支付(三)

微信APP支付需要的参数和JS支付大致相同:

1. APPID——在创建好的移动应用详情中查看
2. APPSECRET——在创建好的移动应用详情中查看
3. MCHID——商户号的ID,注意是和微信开放关联的那个商户号
4. KEY——商户号自己设置的KEY,注意是和微信开放关联的那个商户号的KEY

调试阶段

APP支付的发起是在服务端完成的,APP只是负责调起微信。服务端需要做两件事情:

1. 组合支付参数,请求统一下单接口,生成预支付订单
2. 把预支付订中的信息重新组合,再签好名,传给APP

相比JS支付少了一个获取OPENID的过程,相比PC支付少了一个轮训支付结果的过程,是不是感觉更简单了呢?
那当然是不可能的,APP支付最恐怖的地方在于联调,因为APP请求发起支付如果失败,并不会返回具体的失败原因,往往是直接弹出服务器繁忙,请稍后再试。
你虽然知道有错,但你又只能一遍又一遍的去阅读日志和代码。要知道,只盯着代码看就能把BUG解决的程序员,那可都是高手。如果遇到了,我的解决方式是:仔细的看着官方文档,认真的把代码再重写一遍

在此之前,我给大家的建议是——反复检查参数是否正确
参数是大概率出错的地方。

WEB支付

微信的四种类型的支付方式里面,该注意的事情,已经和大家分享完了。
传送门:
PHP支付接口教程,详解微信支付(一)
PHP支付接口教程,详解微信支付(二)
剩下一个WEB支付,场景是在触屏版使用微信支付。估计是用户体验或者安全性的问题,能申请到这个接口的情况比较少见(我只知道美团有),所以就不单独说它了。希望后面微信会让更多的公司申请WEB支付接口。
它的发起形式是这样的:

https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx20160916105028ff2e3214fa0906951107&package=2460852120

也是通过统一下单接口获取预支付订单号,然后点击链接就能打开微信,完成支付,是不是感觉特方便。
写在最后
不得不说,微信家的支付接口集成确实要比其他家来的难,各种官方DEMO也写得比较复杂,但只要静下心来,问题总会解决的。
虽然我觉得微信都是坑,其实也有可能是自己水平不够吧。
如果有问题欢迎留言讨论,希望能对大家有帮助!


以上内容属于作者原创,特此声明,如需转载,请取得同意

目录
相关文章
|
6天前
|
关系型数据库 MySQL PHP
新手教程:PHP入门教程
《PHP入门教程》涵盖PHP简介、环境搭建、第一个PHP脚本、基本语法、表单处理、函数定义及进一步学习方向。PHP是一种开源脚本语言,适合Web开发。环境搭建可使用XAMPP/WAMP/MAMP或手动安装Apache、PHP和MySQL。通过编写简单代码和处理表单,逐步掌握变量、字符串、数组、条件语句和循环等基础语法。最后介绍数据库操作、会话管理和面向对象编程等高级特性。
98 67
ly~
|
4月前
|
存储 供应链 小程序
除了微信小程序,PHP 还可以用于开发哪些类型的小程序?
除了微信小程序,PHP 还可用于开发多种类型的小程序,包括支付宝小程序、百度智能小程序、抖音小程序、企业内部小程序及行业特定小程序。在电商、生活服务、资讯、工具、娱乐、营销等领域,PHP 能有效管理商品信息、订单处理、支付接口、内容抓取、复杂计算、游戏数据、活动规则等多种业务。同时,在企业内部,PHP 可提升工作效率,实现审批流程、文件共享、生产计划等功能;在医疗和教育等行业,PHP 能管理患者信息、在线问诊、课程资源、成绩查询等重要数据。
ly~
95 6
|
2月前
|
XML 安全 PHP
PHP与SOAP Web服务开发:基础与进阶教程
本文介绍了PHP与SOAP Web服务的基础和进阶知识,涵盖SOAP的基本概念、PHP中的SoapServer和SoapClient类的使用方法,以及服务端和客户端的开发示例。此外,还探讨了安全性、性能优化等高级主题,帮助开发者掌握更高效的Web服务开发技巧。
|
3月前
|
tengine 应用服务中间件 Linux
Tengine、Nginx安装PHP命令教程
要在阿里云Linux上安装PHP,请先更新YUM源并启用PHP 8.0仓库,然后安装PHP及相关扩展。通过`php -v`命令验证安装成功后,需修改Nginx配置文件以支持PHP,并重启服务。最后,创建`phpinfo.php`文件测试安装是否成功。对于CentOS系统,还需安装EPEL源和Remi仓库,其余步骤类似。完成上述操作后,可通过浏览器访问`http://IP地址/phpinfo.php`测试安装结果。
|
4月前
|
PHP Windows
thinkPhP6.0安装教程图解--PHP框架安装
本文是一篇关于ThinkPHP 6.0安装教程的图解,包括环境检查、安装Composer、修改Composer镜像地址、安装ThinkPHP框架以及启动运行ThinkPHP的步骤。文章详细描述了每个步骤的操作方法,并提供了相应的命令和截图,帮助用户理解并顺利完成ThinkPHP 6.0的安装和运行。
thinkPhP6.0安装教程图解--PHP框架安装
|
4月前
详细教程:扫码提交表单后,数据直接推送到企业微信、钉钉、飞书群聊
在草料制作的表单中,填表人扫码填写并提交数据后,这些信息可以立即通过企业微信、钉钉或飞书自动推送到相应的群聊中,实现即时共享和沟通,提升团队协作效率。
103 2
|
3月前
|
云安全 存储 小程序
PHP微信小程序解决方案PhpMall
PHP微信小程序解决方案PhpMall
49 0
|
5月前
|
小程序 编译器 数据安全/隐私保护
小白保姆级教程:微信公众号开发,从0到1
【8月更文挑战第8天】小白保姆级教程:微信公众号开发,从0到1
467 3
|
5月前
|
Linux PHP
Linux CentOS 宝塔 Suhosin禁用php5.6版本eval函数详细图文教程
【8月更文挑战第27天】本文介绍两种禁用PHP执行的方法:使用`PHP_diseval_extension`禁用和通过`suhosin`禁用。由于`suhosin`不支持PHP8,仅适用于PHP7及以下版本,若服务器安装了PHP5.6,则需对应安装`suhosin-0.9.38`版本。文章提供了详细的安装步骤,并强调了宝塔环境下与普通环境下的PHP路径差异。安装完成后,在`php.ini`中添加`suhosin.so`扩展并设置`executor.disable_eval = on`以禁用执行功能。最后通过测试代码验证是否成功禁用,并重启`php-fpm`服务生效。
70 2
|
5月前
|
SQL 关系型数据库 MySQL
PHP与MySQL交互之基础教程
【8月更文挑战第31天】 在数字世界中,数据是推动一切的核心力量。本文将引导你探索PHP与MySQL的协同工作,通过实际代码示例,展示如何建立连接、执行查询以及处理结果集。无论你是初学者还是希望巩固知识的开发者,这篇文章都将为你提供宝贵的实践知识。