微信扫码支付模式一和模式二的区别

http://www.baidu.com/link?url=Aj_xhOM5Q6rpZXkTMBPq4o0UbCO4eLq0esX8B3K2v06bkRS8F8lC4k06rv-3uZARLLTEKJHMhwzI_cdcJiHfqK&wd=&eqid=904bc71f000181740000000356d7d9bf

https://www.zhihu.com/question/35818812/answer/66086727

知乎页面访问存在502 Bad Gateway问题,就将内容保存下来

知乎上的一个解答——DongLin,发呆工程师

著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:DongLin
链接:https://www.zhihu.com/question/35818812/answer/66086727
来源:知乎

模式一和模式二提供了两种不同的能力,适用于不同的场景,看商户具体的需求。

两种模式,在支付的流程中,有一定的共同的流程:
1,生成订单。
2,用户支付。

差别在于:
模式一,先扫码,再生成订单。
模式二,先生成订单,再扫码。

而 生成订单,代表着 本次支付给商户的金额是否是已经确定了。
在模式一中,用户扫描的二维码,此时可以还没有确定实际要支付的金额。
在模式二中,用户扫描的二维码,金额已经是确定的。

可以这么理解,模式一中的二维码,是商品的二维码。
模式二中的二维码,是 订单的二维码,也因为这个是订单的二维码,所以必须要有时效性。


那么这两个场景的玩法,可以有一个明显的差别,
模式一,更适合无人职守的自动售卖机。所有的商品都有一个固定的二维码,价格相对稳定,当用户使用微信支付扫描了二维码,微信再请求自动售卖机的服务提供商的 后台接口,注意,这个请求中,是包含了商品ID以及用户信息的,这样,商户系统就可以根据 商品ID,以及用户的身份,再来确定用户实际要支付的金额。

模式二,更适合有人职守的,支付金额非常不确定的场合。比如,你去饭馆吃饭,虽然每个菜的金额是固定的,但一桌子饭菜的金额不固定,甚至是你还可能使用饭馆事先发放的代金券。这个时候,就需要收银员,预先创建一个订单,确定好金额,然后你再来扫描这个二维码来支付。

当然,用模式二来实现无人值守的自动售卖机,也是可以的。只是这个自动售卖机的就要多承担一些交互以及业务逻辑,在生成二维码之前,创建订单。

 

 

 

https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=6_4

业务流程时序图

 

 

 https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=6_5

业务流程时序图

转载于:https://www.cnblogs.com/danlis/p/5238535.html

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

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

相关文章

双目视觉几何框架详解(玉米专栏8篇汇总)

一、图像坐标:我想和世界坐标谈谈(A) 玉米竭力用轻松具体的描述来讲述双目三维重建中的一些数学问题。希望这样的方式让大家以一个轻松的心态阅读玉米的《计算机视觉学习笔记》双目视觉数学架构系列博客。这个系列博客旨在捋顺一下已标定的双目视觉中的数学主线。数…

(原)Ubuntu14中安装GraphicsMagick

转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5661439.html 参考网址: http://comments.gmane.org/gmane.comp.video.graphicsmagick.core/514 http://www.graphicsmagick.org/INSTALL-unix.html https://github.com/clementfarabet/graphics…

js全局函数

1.parseInt(String,radix):返回转换成整数的值。 注意:当参数radix的值为0,或者没有设置这个参数,parseInt()会根据string来判断数字的基数。 当忽略radix,JavaScript默认数字的基数规则为: 1.如果string以0x开头&…

android之自定义广播

布局文件 点击按钮发送广播 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"android:orientation"vertical" android:layout_width"match_parent&qu…

世界坐标系和相机坐标系,图像坐标系的关系

from&#xff1a;https://blog.csdn.net/waeceo/article/details/50580607一、四个坐标系简介和转换相机模型为以后一切标定算法的关键&#xff0c;只有这边有相当透彻的理解&#xff0c;对以后的标定算法才能有更好的理解。本人研究了好长时间&#xff0c;几乎每天都重复看几遍…

PythonOCC 3D图形库学习—创建立方体模型

Open CASCADE&#xff08;简称OCC&#xff09;平台是是一个开源的C类库&#xff0c;OCC主要用于开发二维和三维几何建模应用程序&#xff0c;包括通用的或专业的计算机辅助设计CAD系统、制造或分析领域的应用程序、仿真应用程序或图形演示工具。 PythonOCC是对Open CASCADE的封…

Struts2、SpringMVC、Servlet(Jsp)性能对比 测试 。 Servlet的性能应该是最好的,可以做为参考基准,其它测试都要向它看齐,参照...

2019独角兽企业重金招聘Python工程师标准>>> Struts2、SpringMVC、Servlet(Jsp)性能对比 测试 。 Servlet的性能应该是最好的&#xff0c;可以做为参考基准&#xff0c;其它测试都要向它看齐&#xff0c;参照它。 做为一个程序员&#xff0c;对于各个框架的性能要有…

深度相机(三)--三种方案对比

from&#xff1a;https://blog.csdn.net/app_12062011/article/details/52511701RGBD方案对比&#xff1a;关键技术规格&#xff1a; 1.检测范围&#xff1b; 2.检测精度&#xff1b; 3.检测角度&#xff1b; 4.帧率。 5.模块大小 6.功耗 目前主流的深度摄像头方案在检测距离上…

Activity隐式启动IntentFilter

时间&#xff1a;2016年3月4日09:54:02IntentFilter过滤信息&#xff1a;action、category、dataaction&#xff1a;1.Intent中的action必须能够和过滤条件中的action匹配&#xff0c;过滤条件中可以有多个action。2.Intent中如果设置多个action则过滤条件中必须至少有同样数量…

基于图像分割的立体匹配方法

1.绪论 立体匹配是三维重建系统的关键步骤&#xff0c;并且作为一种非接触测量方法在工业以及科研领域具有重要的应用价值。为了完成匹配工作以及获取场景的稠密视差图&#xff0c;可以通过构建能量函数对应立体匹配的约束条件。复杂能量函数的全局最优解通常是NP难问题。相对于…

深度相机之TOF原理详解

/*******************************************************************************************************************本文转载源链接没有找到&#xff0c;若有幸被原创作者访问到&#xff0c;请留下原出处&#xff0c;我会更新&#xff0c;谢谢&#xff0c;转载至我的博…

nodejs npm常用命令

npm是一个node包管理和分发工具&#xff0c;已经成为了非官方的发布node模块&#xff08;包&#xff09;的标准。有了npm&#xff0c;可以很快的找到特定服务要使用的包&#xff0c;进行下载、安装以及管理已经安装的包。 1、npm install moduleNames&#xff1a;安装Node模块安…

centos 7 /etc/rc.local 开机不执行的问题

最近发现centos7 的/etc/rc.local不会开机执行&#xff0c;于是认真看了下/etc/rc.local文件内容的就发现了问题的原因了 1234567891011#!/bin/bash# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES## It is highly advisable to create own systemd services or udev rules# …

深度相机(二)--结构光深度测距

原文&#xff1a; http://blog.sina.com.cn/s/blog_80ce3a550100wg5j.html http://blog.csdn.net/u013360881/article/details/51395427 网上资源&#xff1a;http://eia.udg.es/~qsalvi/recerca.html 结构光编码&#xff1a; 在3D 的深度获取上&#xff0c;最为常见的方法是类…

几种特别的颜色参数

switch (buttonIndex) { case 0: aColor [UIColor redColor]; bColor [UIColor colorWithRed:0.97 green:0.68 blue:0.75 alpha:1.0];// 鸨色 break; case 1: aColor [UIColor orangeColor]; bColor [UIColor colorWithRed:1.0 green:0.87 blue:0.72 alpha:1.0];// 肌色 br…

linux 程序包管理5 编译安装

1.二进制程序的访问方法vim /etc/profile.d/apache.shPATH/usr/local/apache/bin:/usr/local/apache/sbin$PATHexport PATH2.头文件输出给系统ln -sv /sur/local/apache/include /usr/include/httpd3.库文件输出vim /etc/ld.so.conf.d/httpd.conf/usr/local/apache/binldconfig…

用python实现模拟登录人人网

用python实现模拟登录人人网 字数4068 阅读1762 评论19 喜欢46我决定从头说起。懂的人可以快速略过前面理论看最后几张图。 web基础知识 从OSI参考模型&#xff08;从低到高&#xff1a;物理层&#xff0c;数据链路层&#xff0c;网络层&#xff0c;传输层&#xff0c;会话层&a…

双目相机--双目视差与深度距离关系推导详解

相机成像的模型如下图所示&#xff1a; P为空间中的点&#xff0c;P1和P2是点P在左右像平面上的成像点&#xff0c;f是焦距&#xff0c;OR和OT是左右相机的光心。由下图可见左右两个相机的光轴是平行的。XR和XT是两个成像点在左右两个像面上距离图像左边缘的距离。 -----------…

SQL Server有这些属性吗

2019独角兽企业重金招聘Python工程师标准>>> Navicat for SQL Server是一个全面的图形化方式管理数据库&#xff0c;可进行创建、编辑和删除全部数据库对象&#xff0c;例如表、视图、函数、索引和触发器&#xff0c;或运行SQL查询和脚本&#xff0c;查看或编辑BLOB…

Android中常见功能包描述

在Android中&#xff0c;各种包写成android.*的方式&#xff0c;重要包的描述如下所示&#xff1a;android.app &#xff1a;提供高层的程序模型、提供基本的运行环境android.content&#xff1a;包含各种的对设备上的数据进行访问和发布的类android.database &#xff1a;通过…