微信公众号内支付和web端扫码支付详细过程(附代码)_微信公众号添加二维码支付-程序员宅基地

技术标签: python  django  微信相关接口  

公众号支付相关配置

微信公众平台链接
1.需要一个已经进行微信认证的公众号
在这里插入图片描述
2,该公众号需要开通微信支付功能
在公众号平台——》开发——》接口权限——》功能服务和网页服务里面的微信支付都要开通
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3,到微信商户平台https://pay.weixin.qq.com/index.php/apply/applyment_home/guide_normal 注册一个商户账号,并关联你的公众号,如果需要实现小程序支付的,需要关联小程序
在这里插入图片描述
4,商户号的配置

  • 配置支付授权目录,登录商户平台——>产品中心——>开发配置
    代表在项目根路径下,以及web目录下的页面都有支付权限,如果不在该路径的页面,则无法调用支付功能。

     若页面地址为:http://myweb.xxxx.com/web/pay.html
    
     则需要配置为:http://myweb.xxxx.com/web/
    

    在这里插入图片描述

  • 设置API密钥,登录商户平台——>账户中心——>API安全——>API密钥
    该密钥在后面的代码中计算支付签名的时候需要使用到
    在这里插入图片描述

  • 配置JS接口安全域名与网页授权域名,登录公众平台——>公众号设置——>功能设置
    配置JS接口安全域名:要让我们的页面中弹出输入密码的窗口,需要使用微信提供的JS-SDK工具,如果不配置JS接 口安全域名,你的页面无法使用JS-SDK。
    在这里插入图片描述
    5,在微信公众平台将商户账号与微信公众号绑定
    在这里插入图片描述
    在这里插入图片描述

6,然后进入微信支付的商户平台
微信支付商户平台

在这里插入图片描述
刷卡支付:用户打开微信钱包的刷卡的界面,商户扫码后提交完成支付。

公众号支付:用户在微信内进入商家H5页面,页面内调用JSSDK完成支付

扫码支付:用户打开"微信扫一扫“,扫描商户的二维码后完成支付

APP支付:商户APP中集成微信SDK,用户点击后跳转到微信内完成支付

H5支付:用户在微信以外的手机浏览器请求微信支付的场景唤起微信支付

小程序支付:用户在微信小程序中使用微信支付的场景

在微信公众号支付选择JSAPI支付即可在web端内扫码支付选择Native支付即可

在这里插入图片描述
JSAPI支付开发文档
Native支付开发文档
持续更新中

pc端二维码的整体思路:

  1. 前端将商品信息等一些参数传递到后端, 后端请求微信服务器发起统一支付,得到微信返回的支付二维码, 返回到前端,然后后端自己定时任务去查支付结果或者用户点击支付完成, 请求接口去查支付结果, 商品入库,用户得到商品
    公众号内H5支付:
  2. 前端将商品信息等一些参数传递到后端, 后端请求微信服务器发起统一支付,得到微信返回的预支付交易会话标识prepay_id, 返回给前端,前端使用这个去调取微信支付组件, 用户支付成功, 微信服务器将支付结果通知到商户服务器
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_44984864/article/details/106713028

智能推荐

python模拟浏览器登录,使用selenium_python 浏览器模拟输入账号密码登陆-程序员宅基地

文章浏览阅读661次。from selenium import webdriveroptions = webdriver.FirefoxOptions()options.add_argument('-headless')driver = webdriver.Firefox(options=options)driver.get('https://www.douban.com/')driver.implici..._python 浏览器模拟输入账号密码登陆

BZOJ 4569 [Scoi2016]萌萌哒_2412: 【bzoj4569】【scoi2016】萌萌哒-程序员宅基地

文章浏览阅读449次。一个长度为n的大数,用S1S2S3…Sn表示,其中Si表示数的第i位,S1是数的最高位,告诉你一些限制条件,每个条件表示为四个数,l1,r1,l2,r2,即两个长度相同的区间,表示子串Sl1Sl1+1Sl1+2…Sr1与Sl2Sl2+1Sl2+2…Sr2完全相同。比如n=6时,某限制条件l1=1,r1=3,l2=4,r2=6,那么123123,351351均满足条件,但是12012,131141不满足条件,前者数的长_2412: 【bzoj4569】【scoi2016】萌萌哒

SoapUI 测试Web Service_soupui 测试sap webservice-程序员宅基地

文章浏览阅读1.9k次。Web Service介绍: https://zh.wikipedia.org/wiki/Web%E6%9C%8D%E5%8A%A1 http://www.w3school.com.cn/webservices/ SOAP(原为Simple Object Access Protocol的首字母缩写,即简单对象访问协议) https://zh.wikipedia.org/wiki/SOAP_soupui 测试sap webservice

Yolov5实例分割Tensorrt部署实战_利用yolov5实例分割-程序员宅基地

文章浏览阅读5.9k次,点赞12次,收藏58次。基于ultralytics最新发布的yolov5,6.2版本,本文对其中的实例分割模型,采用cpp与tensorrt加速推理_利用yolov5实例分割

Jeston TX2 GPIO控输入输出控制_英伟达tx2输入电压与输出电压-程序员宅基地

文章浏览阅读1k次。Jeston TX2 GPIO控输入输出控制主板主要结构介绍主板主要结构介绍TX2主板:_英伟达tx2输入电压与输出电压

kali 如何下载文件_kali进行wget下载镜像-程序员宅基地

文章浏览阅读7.2k次。使用实例实例1:使用wget下载单个文件$wget http://www.minjieren.com/wordpress-3.1-zh_CN.zip说明:以上例子从网络下载一个文件并保存在当前目录,在下载的过程中会显示进度条,包含(下载完成百分比,已经下载的字节,当前下载速度,剩余下载时间)。实例2:使用wget -O下载并以不同的文件名保存$wget -O wordpress.zip http://www.minjieren.com/download.aspx?id=1080wget默认会以最_kali进行wget下载镜像

随便推点

python画圆的代码turtle_用Python中turtle库circle()画圆函数的使用方法-程序员宅基地

文章浏览阅读3.2k次。用Python中turtle库circle()画圆函数的使用方法发布时间:2020-08-21 11:09:06来源:亿速云阅读:736作者:小新小编给大家分享一下用Python中turtle库circle()画圆函数的使用方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!turtle库的基本函数画一只大耳朵小兔子,灵感..._用import turtle ast活句2、可以用turtle.circle0函数画圏

sql注入之pikachu盲注练习-程序员宅基地

文章浏览阅读758次。sql注入pikachu之盲注练习_pikachu盲注

QT 对QString字符串的操作_qstring去除右数14位-程序员宅基地

文章浏览阅读3.1w次,点赞59次,收藏369次。QString是QT提供的字符串类,相应的也就提供了很多很方便对字符串的处理方法。这里把这些对字符串的操作做一个整理和总结。1. 将一个字符串追加到另一个字符串的末尾QString str1 = "hello ";QString str2 = "world";str1.append(str2); // str1 = "hello world"st..._qstring去除右数14位

基于Retrofit2.0 封装的超好用的RetrofitClient_java retrofitclient-程序员宅基地

文章浏览阅读1.3k次。基于Retrofit2.0封装的RetrofitClient. 避免重复创建Retrofit实列调用方便简洁无需重复设置属性的步骤可固定配置 Host,也可动态配置Url,请求头,参数等使用原生的Retrofit请求网络,熟悉的朋友必定了解,在某个ApiServie方法多时 Retrofit设置就显得有点累赘,今天给大家带来对Retrof_java retrofitclient

unity 二维数组 可视化_剑指 offer 第一题: 二维数组中的查找-程序员宅基地

文章浏览阅读238次。题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。题目分析 图 1如果没有头绪的话,很显然使用 暴力解法 是完全可以解决该问题的。即遍历二维数组中的每一个元素,时间复杂度:O(n^2)。其实到这里我们就可以发现,使用这种暴力解法并没有充分利用题目给..._unity 二维数组查看

用Idea EmmyLua插件调试Xlua断点断不下来的问题_emmylua断点无效-程序员宅基地

文章浏览阅读3.6k次。把luaEnv.DoString(File.ReadAllBytes("Assets/Resources/ui2.lua.txt"));改成luaEnv.DoString(File.ReadAllBytes("Assets/Resources/ui2.lua.txt"), "ui2.lua.txt");就可以有断点了_emmylua断点无效

推荐文章

热门文章

相关标签