支付流程的理解

news2024/12/26 23:47:50

开发指引-JSAPI支付 | 微信支付商户平台文档中心

业务流程图:

首先,从业务流程,当有人问你的时候,反问:公司有没有确认跟支付宝合作还是跟微信合作,看有没有签订协议,有的话,要确认公司商户号以及商户验证密码有没有拿到?

已经确认了公司在进行商户号和商户验证密码的申请:这个支付流程在项目的开发过程中是非常重要的,支付一定是跟安全相关的,我想确认一下有没有优秀的后端开发,来进行一个相关接口的一个处理,支付的流程是相当复杂的,而作为前端所做的事情就是一个唤起支付和支付确认的一个处理,所以我所负责的工作就是配合后端开发进行相关的处理的,其实在支付的时候你就会发现支付就是一个按钮的操作,点击按钮就会进行一个支付的处理,这就是所谓的唤起支付。这时是前端所做的,之后就是需要跟后端进行一个配合,主要获取的是一个支付的订单信息和签名信息,这是要由后端开发人员返回给我们的,当确认信息的合法性之后,会有一个支付的调用,这个支付的调用通常由第三方来进行完成的,也不需要前端进行。这些操作进行完之后,可能是成功或者失败,这部分的信息记录都会由后端进行一个衔接,后端要把相关的信息进行一个反馈给我这边,才能进行一个接口的展示,给用户显示成功还是失败。我相信我可以很好的跟后端人员进行一个相关的配合,因为在之前进行一个相关工作的时候也会跟后端的同事进行一个协作。支付的整体流程我还是比较清楚的,因为我也了解过node.js后端的程序开发,需要跟支付宝跟微信进行接口的链接,还需要一个身份的验证,商户号,秘钥,进行一些安全性工作,我们这边的后台进行开发的时候也需要去确保资金的安全,需要考虑我们的防注入,要考虑跨站攻击等等一系列的操作,所以在这里我提到了有没有更为专业的后端开发人员进行一个协助

有四个节点,自己,框架平台,商户平台,微信平台。钱是先付给微信平台,然后商家再去进行提现,微信平台自动进行扣钱。

操作流程:

1. 平台下单  => 

2. 商户系统后台生成订单  => 

3. 商户后台跟微信支付进行联信创建订单  => 

4. 微信支付生成预订单  => 

5. 再从微信支付返回给商户后台  => 

6. 生成待签名的支付信息(主要是安全)=> 

7. 点击按钮发起支付  => 

8. 商户后台确认是跟微信平台进行合作的,调起微信支付  =>   

9. 直接发起支付请求,给微信  => 

10. 微信支付验证支付授权权限(看你是否合法公民)=> 

11. 商户后台返回支付授权  => 

12. 确认支付,输入密码(密码有可能是错误的)=> 

13. 商户后台提交授权  => 

14. 微信平台验证授权  =>

15. 微信平台告诉商家支付结果(密码错误 / 余额不够)=>

16. 保存支付通知  =>

17. 返回告知成功接收处理  =>

18. 微信平台返回支付结果,并发送微信消息的提醒  =>

19. 如果前端出现异常,进行支付查询  => 

20.(未收到支付回调信息)商家平台调用查单接口,查询支付结果  =>

21. 微信返回支付结果 =>

22. 商家返回前端展示支付信息

前端实现支付操作:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1472187.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C# OpenCvSharp Tracker 目标追踪

目录 效果 项目 代码 下载 C# OpenCvSharp Tracker 目标追踪 效果 项目 代码 using OpenCvSharp; using OpenCvSharp.Extensions; using OpenCvSharp.Tracking; using System; using System.Drawing; using System.Reflection; using System.Windows.Forms; namespace C…

iconfont的组件化使用方法(SVG)

目录 一、需求描述二、操作步骤1.在iconfont中选择项目需要使用的图标2.在项目中创建iconfont.js3.创建svgIcon组件 一、需求描述 将iconfont图标库选择的图标以SVG的形式引入项目并通过组件化的形式在项目中引用可控制图标的大小和颜色 二、操作步骤 1.在iconfont中选择项目…

【论文笔记之 YIN】YIN, a fundamental frequency estimator for speech and music

本文对 Alain de Cheveigne 等人于 2002 年在 The Journal of the Acoustical Society of America 上发表的论文进行简单地翻译。如有表述不当之处欢迎批评指正。欢迎任何形式的转载,但请务必注明出处。 论文链接:http://audition.ens.fr/adc/pdf/2002_…

单片机精进之路-5矩阵键盘扫描

如下图,先在p3口输出0xfe,再读取p3口的电平,如果没有按键按下,temp & 0xf0还是0xf0,如果又第一个键按下,temp & 0xf0还是0xee,其他按键由此类推可得。 //4*4键盘检测程序,按下键后相应…

【笔记】【电子科大 离散数学】 2.命题

文章目录 数理逻辑定义 命题定义不是命题的例子 原子命题和复合命题定义约定 命题联结词否定联结词定义例子真值表 合取联结词定义例子真值表 析取联结词定义例子 蕴含联结词定义例子真值表 等价联结词定义例子真值表 命题符号化及其应用速查表格优先级复合命题符号化布尔检索演…

golang学习1,dea的golang-1.22.0

参考:使用IDEA配置GO的开发环境备忘录-CSDN博客 1.下载All releases - The Go Programming Language (google.cn) 2.直接next 3.window环境变量配置 4.idea的go插件安装 5.新建go项目找不到jdk解决 https://blog.csdn.net/ouyang111222/article/details/1361657…

docker存储驱动

目录 一、写时复制和用时分配 二、联合文件系统 2.1、aufs ​编辑 2.2、分层的问题 2.3、overlay 2.4 文件系统区别 三、容器跑httpd案例 3.1、案例1:端口映射 3.2、案例2:制作httpd应用镜像 3.3、案例3:docker数据卷挂载 3.4、案…

sqllabs的order by注入

当我们在打开sqli-labs的46关发现其实是个表格,当测试sort等于123时,会根据列数的不同来进行排序 我们需要利用这个点来判断是否存在注入漏洞,通过加入asc 和desc判断页面有注入点 1、基于使用if语句盲注 如果我们配合if函数,表达…

《Docker 简易速速上手小册》第4章 Docker 容器管理(2024 最新版)

文章目录 4.1 容器生命周期管理4.1.1 重点基础知识4.1.2 重点案例:启动并管理 Python Flask 应用容器4.1.3 拓展案例 1:调试运行中的容器4.1.4 拓展案例 2:优雅地停止和清理容器 4.2 容器数据管理与持久化4.2.1 重点基础知识4.2.2 重点案例&a…

IT行业风向让人琢磨不透,一端狂裁,一端狂吸收……

2024年伊始,全球科技行业显然又掀起了新一波的裁员潮。尽管这轮裁员潮来得不如去年年初那样猛烈,但依然不免令不少人感到措手不及…… 甚至有人开工第一天收到的并不是开门红包,而是裁员说明书: 以前一直以为年前被裁,…

甲基二十四聚乙二醇叠氮,mPEG24 N3,可以和含有 Alkyne 基团的分子反应

您好,欢迎来到新研之家 文章关键词:2563873-82-3,m-PEG24-azide,mPEG24 N3,甲基二十四聚乙二醇叠氮,甲基 PEG24 叠氮 一、基本信息 【产品简介】:M-PEG24-azide is a click chemical reagent…

idea集成git(实用篇)

0.Git常用命令 Git常用命令-CSDN博客 1.下载git Git - Downloads 一路傻瓜式安装即可(NEXT) 2.软件测试 在Windows桌面空白处,点击鼠标右键,弹出右键菜单 Git软件安装后,会在右键菜单中增加两个菜单 Git GUI He…

2024022502-数据库绪论

数据库绪论 数据管理的三个阶段 人工管理阶段 文件系统阶段 数据库系统阶段 基本术语 数据(Data) 计算机用来描述事物的记录(文字.图形.图像.声音)数据的形式本身并不能完全表达其内容&am…

LeetCode第二题: 两数相加

文章目录 题目描述示例 解题思路 - 迭代法Go语言实现 - 迭代法算法分析 解题思路 - 模拟法Go语言实现 - 模拟法算法分析 解题思路 - 优化模拟法主要方法其他方法的考虑 ‍ 题目描述 给出两个非空的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方…

第三百六十八回

文章目录 1. 概念介绍2. 方法与细节2.1 获取方法2.2 使用细节 3. 示例代码4. 内容总结 我们在上一章回中介绍了"如何获取当前系统语言"相关的内容,本章回中将介绍如何获取时间戳.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们在本章…

alembic

alembic是sqlalchemy的作者开发的。 用来做OMR模型与数据库的迁移与映射。 第一个,alembic的所有命令都是以alembic开头 第二,alembic的迁移文件也是通过版本进行控制的。首先,通过pip install alembic进行安装。以下将解释alembic的用法 方…

Linux内核网络

文章目录 前言网络协议栈图解功能 发送Linux内核网络数据包图解流程 接收Linux内核网络数据包图解流程 最后 前言 你好,我是醉墨居士,因为Linux内核涉及的内容极多,我们初学者如果一上来就开始深挖细节,很有可能会在Linux内核代码…

如何使用Axure RP制作web页面并实现无公网ip远程访问——“cpolar内网穿透”

文章目录 前言1.在AxureRP中生成HTML文件2.配置IIS服务3.添加防火墙安全策略4.使用cpolar内网穿透实现公网访问4.1 登录cpolar web ui管理界面4.2 启动website隧道4.3 获取公网URL地址4.4. 公网远程访问内网web站点4.5 配置固定二级子域名公网访问内网web站点4.5.1创建一条固定…

NFTScan | 02.19~02.25 NFT 市场热点汇总

欢迎来到由 NFT 基础设施 NFTScan 出品的 NFT 生态热点事件每周汇总。 周期:2024.02.19~ 2024.02.25 NFT Hot News 01/ LINE NEXT 与 ReadON 建立战略合作伙伴关系,将为 DOSI 用户提供创新数字产品 2 月 19 日,日本社交巨头 LINE 旗下 NFT …

lv20 QT入门与基础控件 1

1 QT简介 QT是挪威Trolltech开发的多平台C图形用户界面应用程序框架 典型应用 2 工程搭建 2.1 新建ui工程 不要写中文路径 2.1 不勾选UI(主讲) 3 QT信号与槽机制 语法:Connect(A, SIGNLA(aaa()), B, SLOT(bbb()))…