热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

laravel使用easyWeChat搭建微信企业付款,以及微信app提现和微信公众号提现的区别

微信提现又叫微信企业付款顾名思义:微信企业帐号向某一个用户打款的流程。官网文档中说明,企业付款目前只支持向商户appid下,某用户的openid这就话的意思对于新手来说真的搞不明白
  • 微信提现又叫 微信企业付款 顾名思义:微信企业帐号向某一个用户打款的流程。
  • 官网文档中说明,企业付款目前只支持向 商户appid下,某用户的openid 这就话的意思对于新手来说真的搞不明白是啥意思。是指公众平台下的用户openid ?还是开放平台下的用户opendid ? 微信企业付款官方文档
  • 上面提出的问题,如果知道的人,就没必要向下看了,不知道的,咱们这就来说说看。
  • 微信开放平台: 一般是用来建立APP移动端应用,只要是针对安卓、IOS开发的文档,例如:app微信三方登录、微信APP支付等。。。 开放平台是有独立的appid。
  • 微信公众平台:微信后端开发必须要懂里面设置,来个图大家看一下。这里只要是微信公号的开发配置也就是H5页面。公众号也是有独立的appid。
    《laravel使用easy-WeChat搭建微信企业付款 ,以及微信app提现和微信公众号提现的区别》
  • 微信商户平台:这里只要集中于微信的各类支付业务,要做微信jsp支付还是H5支付或者微信app支付,都是在这里。
  • 简单的看一下微信商户平台、微信公众平台、微信开放平台的关系
    《laravel使用easy-WeChat搭建微信企业付款 ,以及微信app提现和微信公众号提现的区别》
  • 在这种图中看出来微信公众平台跟开放平台基本没啥关系,大家都知道获取用户的openid必须有appid,所以开放平台用户的openid跟公众平台用户的openid是不一样的。
  • 上面叨叨这么多,也是微信本人在做微信app提现和公众号提现的时候,遇到的问题无人解答只能自己摸索。特此写的啰嗦了,下面开始laravel下使用-laravel-easy-WeChat微信企业付款代码。

逻辑开始

  • 首先下载插件composer require overtrue/laravel-wechat

  • 自定义laravel artisan控制台命令,用户crontab 定时执行。

  • 执行此命令php artisan command Wechat_server –command=wechat_server会在app\Console\Commands\ 生成Wechat_server.php文件,具体的注册命令就不说了。想了解可以去看一下laravel 文档。

  • 这段代码是微信企业付款的配置项:

    use use EasyWeChat\Factory; //引入
    public function handle()
    {
    $this->info("开始执行....");
    $cOnfig= [
    'app_id' => config("wechat.wechat_app_appid"), //微信开放平台
    'mch_id' => $payment['wxnative_mchid'], //微信商户号
    'key' => $payment['wxnative_key'], // API密钥
    'cert_path' => ROOT_PATH.'mw_server/weixin_cert/apiclient_cert.pem', // XXX: 绝对路径!!!!
    'key_path' => ROOT_PATH.'mw_server/weixin_cert/apiclient_key.pem', // XXX: 绝对路径!!!!
    ];
    $app = Factory::payment($config);
    $this->get_user_account_list($app);
    $this->info("执行结束...");
    }
    //参数拼接,逻辑开始
    public function get_user_account_list($app){
    $a = [
    'partner_trade_no' =>‘123123123’, // 商户订单号,需保持唯一性(只能是字母或者数字,不能包含有符号)
    'openid' => “ ”, 用户在平台下的openid,取决于appid
    'check_name' => 'FORCE_CHECK', // NO_CHECK:不校验真实姓名
    're_user_name' => "nickname", // 如果 check_name 设置为FORCE_CHECK,则必填用户真实姓名
    'amount' =>abs(1) * 100,// 企业付款金额,单位为分
    'desc' =>"环球猫王提现转账"//企业付款操作说明信息。必填
    ];
    $result=$app->transfer->toBalance($a); //发送请求
    }

  • 这里主要说一下 c o n f i g 配 置 数 组 中 的 a p p i d 和 config 配置数组中的appid和 configappida 参数数组中openid

  • 上面说到了appid 公众平台是独立的,开放平台也是独立的,所以app微信提现就要选择开放平台的appid,公众号微信提现就选择公众平台的appid

  • 用户openid在开放平台下 && 公众平台下是不一样的,所以要选对主人,在app微信提现填写的开放平台下的appid,openid你就要填写开放平台下的,公众号提现也是一样的道理。

  • 话说回来,开放平台的openid是怎么获取的呢?开放平台获区用户的openid有俩中方式,一个是用户授权,一个是app微信支付,都是可以获取到用户的openid,存起来即可。

  • 公众平台下的openid就很好解决了,用户关注公众号、用户授权、jsp支付、获取用户信息接口等。。。都是可以拿到用户的openid。

  • 上述所说的开放平台信息跟公众平台信息分开进行提现,是本人亲自实现得出,并且已实施生成环境,如有不对欢迎指出。


推荐阅读
  • 掌握PHP编程必备知识与技巧——全面教程在当今的PHP开发中,了解并运用最新的技术和最佳实践至关重要。本教程将详细介绍PHP编程的核心知识与实用技巧。首先,确保你正在使用PHP 5.3或更高版本,最好是最新版本,以充分利用其性能优化和新特性。此外,我们还将探讨代码结构、安全性和性能优化等方面的内容,帮助你成为一名更高效的PHP开发者。 ... [详细]
  • Web开发实践:创建连连看小游戏
    本文详细介绍了如何在Web环境中开发一款连连看小游戏,适合初学者和技术爱好者参考。通过本文,您将了解游戏的基本结构、连线算法以及实现方法。 ... [详细]
  • Excel技巧:单元格中显示公式而非结果的解决方法
    本文探讨了在Excel中如何通过简单的方法解决单元格显示公式而非计算结果的问题,包括使用快捷键和调整单元格格式两种方法。 ... [详细]
  • egg实现登录鉴权(七):权限管理
    权限管理包含三部分:访问页面的权限,操作功能的权限和获取数据权限。页面权限:登录用户所属角色的可访问页面的权限功能权限:登录用户所属角色的可访问页面的操作权限数据权限:登录用户所属 ... [详细]
  • 在Laravel中实现PHP对JSON数据的发布与处理 ... [详细]
  • 掌握DSP必备的56个核心问题,我已经将其收藏以备不时之需! ... [详细]
  • Optimizing Profile URLs to Function Exclusively with Usernames, Eliminating the Need for User IDs ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了laravel中抽离公共模版共用数据相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 最优化算法与matlab应用3:最速下降法
    最优化算法与matlab应用3:最速下降法最速下降法是一种沿着N维目标函数的负梯度方向搜索最小值的方法。(1)算法原理函数的负梯度表示如下:搜索步长可调整ak,通常记为(第k次迭代 ... [详细]
  • 本文详细探讨了 Android Service 组件中 onStartCommand 方法的四种不同返回值及其应用场景。Service 可以在后台执行长时间的操作,无需提供用户界面,支持通过启动和绑定两种方式创建。 ... [详细]
  • 如何高效学习鸿蒙操作系统:开发者指南
    本文探讨了开发者如何更有效地学习鸿蒙操作系统,提供了来自行业专家的建议,包括系统化学习方法、职业规划建议以及具体的开发技巧。 ... [详细]
  • 深入解析Android 4.4中的Fence机制及其应用
    在Android 4.4中,Fence机制是处理缓冲区交换和同步问题的关键技术。该机制广泛应用于生产者-消费者模式中,确保了不同组件之间高效、安全的数据传输。通过深入解析Fence机制的工作原理和应用场景,本文探讨了其在系统性能优化和资源管理中的重要作用。 ... [详细]
  • PHP服务接口的专业测试方法与实践 ... [详细]
  • 利用宝塔面板高效部署与使用Easyswoole框架详解
    本文详细介绍了如何在宝塔面板上高效部署和使用Easyswoole框架。以PHP 7.4和宝塔面板7.6为环境基础,首先配置了Swoole扩展,并禁用了`symlink`、`readlink`和`proc_open`三个潜在风险函数。接着,通过宝塔面板的便捷管理功能,顺利完成了Easyswoole框架的安装与初步配置,为开发者提供了高效、稳定的开发环境。 ... [详细]
  • 本文初步探讨了PHP中基于JWT(JSON Web Token)的身份验证机制。具体流程包括:1. 客户端通过用户名和密码发起登录请求;2. 服务器接收并验证用户凭证的合法性,若验证通过,则生成并返回一个JWT令牌;3. 客户端接收该令牌,并在后续请求中携带此令牌以完成身份验证。这一机制不仅提高了安全性,还简化了会话管理。 ... [详细]
author-avatar
Tibetan-妍自_557
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有