文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

php微信支付流程是什么

2023-07-06 01:33

关注

今天小编给大家分享一下php微信支付流程是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

微信支付基本流程

微信支付的基本流程可以分为用户在商家APP或H5页面下单、商家调用微信支付API进行支付、微信返回交易结果、商家接收支付通知四个步骤。

具体来说,当用户在商家APP或H5页面下单时,商家需要把订单信息传递到微信支付平台,经过微信支付平台的支付处理后,返回支付结果。当支付结果返回后,商家根据交易结果进行相应的业务处理,并向用户展示交易结果。

  1. 用户选择商品并提交订单;

  2. 商户系统接收到用户订单请求,调用微信支付API提交交易请求;

  3. 微信支付平台接收到商户请求后,验证用户身份和支付金额,向用户发起订单支付请求。

  4. 用户确认支付,输入支付密码

  5. 微信支付平台将支付结果返回商户系统,并通知用户支付成功。

微信支付技术原理

微信支付技术原理主要由微信支付API、微信支付平台、商户系统三部分组成,下面我们先来看一下微信支付的API。

微信支付API

当商户系统通过微信支付发起支付请求时,需要通过微信支付API向微信支付平台发送支付请求。微信支付API是一组RESTful接口,具有高度的可读性和易使用性,主要包括统一下单、查询订单、关闭订单、申请退款、查询退款等接口。下面我们主要介绍一下统一下单接口的使用。

统一下单接口的使用步骤

  1. 获取预支付订单号
    在商户系统中,开发人员通过调用微信支付API的统一下单接口,向微信支付平台提交支付请求。微信支付平台收到请求后,对商户提交的订单信息进行校验,然后返回一个预支付订单号,用于唯一标识该笔订单。开发人员需要保存该预支付订单号,并作为后续支付流程的重要参数使用。

统一下单接口调用示例:

<?phprequire_once "WxPay.Api.php";$input = new WxPayUnifiedOrder();$input->SetBody("test");$input->SetOut_trade_no(WxPayConfig::MCHID . date("YmdHis"));$input->SetTotal_fee("1");$input->SetTime_start(date("YmdHis"));$input->SetTime_expire(date("YmdHis", time() + 600));$input->SetNotify_url("http://www.example.com/wxpay/notify.php");$input->SetTrade_type("APP");$order = WxPayApi::unifiedOrder($input);print_r($order);?>
  1. 获取支付参数
    在接收到微信支付平台返回的预支付订单号后,商户系统需要再次调用微信支付API的统一下单接口,获取支付参数。支付参数包括APPID、时间戳、随机字符串、签名方式、支付签名等。支付签名是商户系统或第三方支付代理商对支付参数进行加密后的结果,唯一标识该笔交易。商户系统需要保存这些支付参数,并将其返回给移动端,由移动端唤起微信SDK完成支付流程。

统一下单接口调用示例:

$parameters = [    'appid' => $app_id,    'partnerid' => $mch_id,    'prepayid' => $prepay_id,    'package' => 'Sign=WXPay',    'noncestr' => $nonce_str,    'timestamp' => $timestamp,];ksort($parameters);$string = '';foreach ($parameters as $key => $value) {    $string .= $key . '=' . $value . '&';}$string .= 'key=' . $key;$parameters['sign'] = strtoupper(md5($string));

微信支付平台

微信支付平台是微信的一个支付服务平台,主要由支付、结算、清算等模块构成。支付模块负责接收商户下发的支付请求并进行处理,接收并处理支付结果通知;结算模块负责商户的结算,包括商户的结算查询、结算策略配置、生成结算清单等;清算模块负责定期清算,管理微信支付平台各功能模块的财务事务。

商户系统

商户系统是微信支付的用户端,负责接收、处理微信支付平台发起的各种支付请求,并进行相应的支付操作。文中所提到的商户系统主要是指PHP商户系统,通过调用微信支付API传输订单信息、获取预支付订单号、获取支付参数等基本支付操作。

以上就是“php微信支付流程是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯