CN112215678A - 一种基于模板的动态支付收银台的实现方法 - Google Patents
一种基于模板的动态支付收银台的实现方法 Download PDFInfo
- Publication number
- CN112215678A CN112215678A CN202011122804.0A CN202011122804A CN112215678A CN 112215678 A CN112215678 A CN 112215678A CN 202011122804 A CN202011122804 A CN 202011122804A CN 112215678 A CN112215678 A CN 112215678A
- Authority
- CN
- China
- Prior art keywords
- payment
- template
- commerce
- cashier
- page
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0641—Shopping interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/12—Payment architectures specially adapted for electronic shopping systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/22—Payment schemes or models
- G06Q20/227—Payment schemes or models characterised in that multiple accounts are available, e.g. to the payer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Databases & Information Systems (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于模板的动态支付收银台的实现方法,采用统一的支付收银台模板开发规范;以及使用收银台SDK、支付收银台模板渲染引擎、支付收银台模板仓库三个模块;所述收银台模板开发规范指支付收银台模板文件的指令使用和授权规范,包括收银台模板指令的使用规范以及收银台页面的开发规范。基于这套支付模块的开发规范电商能自定义开发满足业务需求的支付收银台界面;所述收银台模板指令包含:电商信息指令:用于获取电商相关信息,电商能根据该指令信息在支付收银台页面展示其电商信息;支付渠道指令:旨在给不同的电商提供个性化的电商收银台系统,降低电商对接支付通道的开发成本,同时可以帮助电商个性化定制收银台系统。
Description
技术领域
本发明属于互联网支付领域,具体涉及互联网个性化自定义的支付收银台页面的实现方法。
背景技术
对于当下火热的电商平台来说,支付是其平台的重要一个环节。电商对接支付通道需要花费大量的开发成本以及后期的维护成本。电商如果直接对接一个完善的收银台系统,就会大量减少开发和运维成本。
CN2016111220945公开了一种动态支付方法及系统,包括:步骤S100客户端根据当前时间、用户的银行卡序号、客户端设备标识信息生成动态码;步骤S200客户端根据生成的所述动态码对所属客户端中对应银行卡插件的唯一标识信息进行加密;步骤S300客户端根据所属客户端中的银行卡序号信息、所述动态码、所述步骤S200中加密后的唯一标识信息生成动态银行卡号;步骤S400服务器根据所述动态银行卡号进行验证,当验证成功后,完成支付,否则,返回执行步骤S100。其目的生成动态银行卡号的,采用离线认证的方式,加快支付效率,方便用户使用。
CN201910345096.8公开了一种随机数发生器及电子券、动态支付码的生成方法,包括初始排序数组生成模块:所述初始排序数组包含指定位长的全部数字,数组的值与数组序号一致,且按大小顺序排序;随机种子数组生成模块:用随机数算法得到序号,随机算法取值范围为0到数组元素个数减1,每取一个数,数组元素个数减1;将随机序号存储的数值按次序放入随机种子数组中;随机数获取模块:按次序从随机种子数组取值,取出的值即为随机数。本发明提供的随机数发生器及电子券、动态支付码的生成方法,能够使用位长范围内的全部随机数,且保证取出的随机数不会重复。
目前市面上大部分的支付通道只支持接口层面的对接,这些接口的对接需要投入大量的人力物力以及后期的维护成本。对于少量提供了收银台页面的支付通道,收银台页面要么过于标准化,要么与支付通道的业务偶尔太深,不适应电商的个性化业务场景。
目前国内的第三方渠道提供的支付收银台,都是统一样式的收银台,内部包含第三方渠道的特征信息(logo、主题风格等)。无法给不同的电商提供不同要求的收银台页面;国外的支付收银台也只可以自定义颜色,无法更改整个收银台页面的内容以及排版等信息。
本发明方法旨在减少电商都会支付通道的开发以及维护成本。在此基础上商户又能动态的自定义自己的收银台页面,并且能够实时的根据需要替换收银台界面。
发明内容
为了解决上述为题,本发明设计了一种基于模板的动态支付收银台的实现方法,包括:根据支付环境的不同,使用不同的收银台模板用于使用不同的支付环境;根据商户的业务需求以及场景不同,使用不同的收银台模板,生成不同场景的收银台页面。
本发明技术方案为:一种基于模板的动态支付收银台的实现方法,统一的支付收银台模板开发规范;以及使用收银台SDK、支付收银台模板渲染引擎、支付收银台模板仓库三个模块;
所述收银台模板开发规范指支付收银台模板文件的指令使用和授权规范,包括收银台模板指令的使用规范以及收银台页面的开发规范。基于这套支付模块的开发规范电商能自定义开发满足业务需求的支付收银台界面;
所述收银台模板指令主要包含(大部分指令,并不意味着是全部指令),如下:
电商信息指令:用于获取电商相关信息,电商能根据该指令信息在支付收银台页面展示其电商信息;
支付渠道指令:用户获取电商支持的支付渠道信息以及每个不同支付渠道的支付方式。使用该指令,电商可以在收银台页面展示其支持的支付方式,以及根据不同的支付方式引导模板引擎执行不同的支付逻辑的处理;
订单信息指令:用于获取支付订单相关的信息,电商能根据该指令在页面上展示给用户需要支付的订单信息;
根据支付环境的不同,系统能使用不同的收银台模板,生成适应当前的支付环境的收银台页面;根据电商的业务需求不同,使用不同的收银台模板,生成满足电商业务需求的收银台页面;
步骤1:商户需要根据模板指令以及支付的SDK,开发一个满足自身业务场景需求的收银台模板;
1)模板引擎支持HTML模板页面的渲染,基于HTML模板功能,电商可以快速的开发一个自定义的收银台网页;
2)该模板引擎中需要内置与支付相关的模板指令,电商在开发模板页面时,使用这些内置的支付模板指令,获取到支付订单、支付渠道、支付方式、用户信息等相关的数据,方便电商快速集成支付相关功能;
3)该模板引擎需要内置支付SDK,该SDK需要实现不同支付方式(网页跳转支付、二维码支付、后台支付等)的支付流程处理,根据用户选择的支付方式(扫码支付、触屏支付、网银支付等)不同,电商需要调用SDK中不同的支付函数来发起支付处理。
步骤2:商户将上述收银台模板文件发布到支付收银台模板仓库中,进行存储;
步骤3:当商户进行支付时,系统会根据商户的业务以及支付场景,从远程模板仓库或者本地缓存仓库中获取相应收银台模板文件;
步骤4:系统基于模板文件以及支付的相关的接口创建相应的收银台页面并响应给用户进行支付;
步骤2中:为方便管理电商的模板文件,需要搭建一套支付收银台模板文件以及作为资源文件的支付收银台模板仓库;
2-1)商户将模板文件以及资源文件,按照要求打包成一个独立压缩包文件;
2-2)商户在上传模板文件时,支付收银台模板仓库会动态解析模板文件的内容,并校验模板的文件安全性,以及语法的正确性;
2-3)模板文件上传支付收银台模板仓库成功后,支付收银台模板仓库会返回一个该模板文件的唯一标识;使用该标识,电商能指定需要使用的收银台模板文件。
商户需要根据模板指令以及收银支付的SDK(如现有的科迈、思迅),开发或使用一个满足自身业务场景需求的收银台模板。收银支付的SDK是根据支付的流程以及支付的安全性,自定义封装的一套支付相关接口,商户可以在模板中调用SDK来进行支付,极大的简化了商户开发支付的流程以及降低了开发支付的成本。
步骤2中:为保证数据的可靠性以及敏感数据不被第三方窃取,要求对连接到动态收银台上的电商系统做RSA的签名以及加密校验。
步骤2中:为保证数据的模板文件的安全可靠,电商需要对模板文件进行签名。
步骤3中:为保证模板文件解析以及渲染收银台的页面高效性,系统在本地建立了一套本地仓库。
步骤3-1:当电商第一次连接到动态收银台页面时,系统会向远程仓库获取模板文件,并缓存在本地仓库中
步骤3-2:当本地仓库有收银台页面模板时,系统会从本地仓库获取模板文件进行编译。
步骤3-3:当模板文件编译成功后,就可以用于渲染收银台页面。
实现方法包括:统一的支付收银台模板开发规范;及收银台SDK、支付收银台模板渲染引擎、支付收银台模板仓库三个模块。
所述收银台模板开发规范,主要包括收银台模板指令的使用规范以及收银台页面的开发规范。基于这套支付模块的开发规范电商可以自定义开发满足业务需求的支付收银台界面。
所述收银台模板开发规范主要是指支付收银台模板文件的指令使用和授权规范。
所述收银台模板指令主要包含(大部分指令,并不意味着是全部指令),如下:
电商信息指令:用于获取电商相关信息,电商可以根据该指令信息在支付收银台页面展示其电商信息。
支付渠道指令:用户获取电商支持的支付渠道信息以及每个不同支付渠道的支付方式。使用该指令,电商可以在收银台页面展示其支持的支付方式,以及根据不同的支付方式引导模板引擎执行不同的支付逻辑的处理;
订单信息指令:用于获取支付订单相关的信息,电商可以该指令在页面上展示给用户需要支付的订单信息。
用户信息指令:用于获取支付用户的相关信息,电商可以通过该指令获取用户在支付渠道的签约信息。在用户授权的情况下,电商可以根据其签约信息使用收银台SDK对用户进行后台扣款。
所述授权规范主要是用于对电商进行收银台模板指令的授权,电商只有在授权通过的情况下,才能使用相应的指令构建电商个性化自定义的动态收银台界面。
所述收银台SDK,主要包含了二维码支付的处理、网银支付的处理、后台接口支付的处理、支付签约的处理等与支付相关的开放接口。使用收银台SDK,商户可以无需关心不同支付渠道与电商平台是如何连接的,电商平台只需要根据业务需要监听不同的支付回调事件信息,进行相应的支付事件处理。
当支付渠道属于二维码支付时,收银台SDK会连接相应的支付渠道获取二维码信息并展示给用户,当用户使用二维码支付完成时,模板渲染引擎会自动通知电商平台用户的支付结果,并引导用户返回电商平台。
当支付渠道属于网银支付时,收银台SDK会构建相应支付渠道需要的支付信息,引导用户进入网银页面进行支付,当用户使用网银支付完成时,模板渲染引擎会自动通知电商平台用户的支付结果,并引导用户返回电商平台。
当支付渠道属于后台支付时,收银台SDK会引导用户进行支付授权,当授权成功时,模板渲染引擎将会自动后台连接支付渠道进行扣款支付,当支付完成时,模板渲染引擎会自动通知电商平台用户的支付结果,并引导用户返回电商平台。
所述支付收银台模板渲染引擎,主要是将符合收银台模板开发规范的收银台模板文件渲染为真正的电商需要的收银台页面。
所述支付收银台模板仓库,主要是提供一个统一的仓库环境给电商进行收银台模板文件的版本维护,以及方便收银台模板引擎根据需要下载商户的支付收银台模板文件。
电商管理维护动态收银台模板文件的主要步骤如下:
步骤1:电商将开发完的支付收银台模板以及资源文件进行签名打包成模板文件
步骤2:电商将打包好的支付收银台模板文件通过仓库管理平台进行上传。
步骤3:仓库在审核完电商的支付收银台模板文件后,发布到收银台模板文件的仓库中。
步骤4:发布到仓库中的支付收银台模板文件,可供所有的模板渲染引擎进行实时的下载,编译并渲染成商户需要的收银台界面。
有益效果:本发明能根据支付环境的不同,使用不同的收银台模板用于使用不同的支付环境;在此基础上商户又能动态的自定义自己的收银台页面,并且能够实时的根据需要替换收银台界面。根据商户的业务需求以及场景不同,使用不同的收银台模板,生成不同场景的收银台页面。能减少电商都会支付通道的开发以及维护成本。
附图说明
图1为本发明方法中的模板引擎设计结构
图2为本发明方法中的动态收银台的渲染流程
图3为本发明方法中的动态收银台的工作原理
图4为本发明方法中的模板指令的工作原理
具体实施方式
下面将会结合本发明实施例中的附图,对本发明具体实施方法进行详细的说明以及描述。在此,本发明的示意性的实施方式以及说明用于解释本方法,但并不应该用于对本方法进行限定。
如图1所示为本方法的支付收银台模板的引擎设计结构图。如图1所示支付收银台模板引擎主要可以划分为7个模块:支付收银台页面的渲染输出、收银台模板的编译处理层、收银台模板开发接口层(收银台模板指令以及收银台服务SDK,现有的SDK如科迈、思迅等商用模块)、模板服务接口层、支付逻辑层、最下层为数据层(提供数据库存储以及收银台模板仓库服务)。
电商开发自定义的收银台模板主要是使用收银台模板开发的接口层。开发收银台台动态模板的细节步骤为:
步骤1:电商使用该层的模板指令来获取支付相关的数据,例如支付渠道信息、签约信息、电商信息、用户信息等;
步骤2:电商使用指令获取到相关数据,根据数据格式构建自己想要的页面
步骤3:电商需要监听支付收银台页面的可用支付渠道,当用户选择渠道进行支付时,使用该层的SDK对用户选择的渠道进行支付接口的调用以及支付的业务处理。该SDK回调用收银台模板引擎的对外接口服务,引导用户完成支付流程,并将最终的支付结果信息通知给电商以及用户。
支付服务接口层主要是包装了底层的支付服务以及敏感的支付数据信息,并为上层收银台模板开发接口层提供服务。该层起到一个呈上起下的过程,对上层提供一个更满足商户业务的服务接口,并增加数据安全信息的校验,当安全校验通过时,就会调用下层的支付逻辑层进行业务处理。服务接口调用的主要步骤为:
步骤1:电商使用自己的私钥对请求数据进行加密并调用模板指令或者支付SDK。
步骤2:支付服务接口层使用电商的公钥对数据进行验证以及电商的权限进行验证。
步骤3:支付服务接口层安全验证通过时,就会调用下层支付逻辑层进行服务调用。
支付逻辑处理层主要是封装了当前市面上的支付服务接口。向支付服务接口层提供一个统一的支付层。该层主要是市面上的支付渠道,根据用户选择的支付渠道的不同,该层会使用不同的逻辑去获取支付数据信息。当用户选择使用二维码进行支付时,该层就会去渠道获取一个二维码支付订单数据,模板引擎根据底层提供的数据,会动态的在页面展示二维码信息;当用户使用网银支付时,该层就会生成构建渠道需要的支付数据,模板引擎根据底层提供的数据,会动态的将用户页面重定向到银行的网银页面引导用户进行支付。
数据层主要是负责存储支付相关数据,模板仓库主要是存储商户发布的模板信息,对模板文件进行版本化管理。
如图2为动态支付收银台的渲染以及工作流程,详细的渲染步骤如下:
步骤1:当电商开始连接到系统的动态收银台页面时,模板渲染引擎就会在已经编译过的模板文件中查找可用的模板。
步骤2:当无法找到合适的模板文件时,模板渲染引擎就会从本地仓库里面查找可用的模板文件。
步骤3:当本地仓库也无法找到可用的模板文件时,模板渲染引擎就会从远程仓库里面查找可用的模板文件,并将远程仓库里面的模板文件同步到本地仓库。
步骤4:模板渲染引擎在此从本地仓库获取模板文件,并将模板文件编译为可用的收银台页面渲染资源文件。
步骤5:模板引擎根据编译的模板文件渲染出相应的自定义的收银台页面,并将该页面输出到用户的浏览器中。至此用户将会看到一个符合电商页面风格的收银台页面。
步骤6:当用户在支付收银台界面选择支付渠道时,收银台模板引擎就会引导用户进行支付。
步骤7:当用户支付成功或者支付失败时,支付收银台模板引擎,就会将支付结果信息通知到电商以及电商用户。
如图3为动态支付收银台的工作原理,下面将会结合实例来详细的说明,具体步骤如下:
步骤1:当电商支付请求连接到支付动态收银台系统时,动态收银台系统将会获取收银台模板的元数据信息并将元数据信息发送到收银台模板引擎。
步骤2:收银台模板引擎接收到模板的元数据信息后,将会从引擎的编译缓存区域查询是否有合适的已编译的模板。
步骤3:收银台模板引擎如果没有找到已编译的模板将会从本地模板仓库中获取模板文件,如果本地模板仓库没有模板文件就会从远程仓库获取模板文件,并缓存在本地仓库中。
步骤4:收银台模板引擎初始化模板语法解析器动态的将模板文件编译为模板语法树并缓存在引擎的已编译区域。
步骤5:收银台模板引擎中的模板语法解析器会将模板文件编译为HTML语法树,CSS语法树以及支付数据相关的模板指令集语法树。
步骤6:收银台模板引擎根据模板中使用的指令会动态的调用支付平台中的接口获取收银台模板页面中的数据。收银台模板引擎中包含的支付相关指令为:支付渠道获取指令、商户信息获取指令、支付订单创建指令、数据安全校验指令、支付金额计算指令等。
上述支付相关指令的详细作用如下:
支付渠道获取指令:模板中调用该指令可以动态的获取电商在支付平台系统中配置的支付渠道信息,引擎会自动将指令获取的数据加入模板数据中。
商户信息获取指令:模板中调用该指令可以动态的获取电商自身的相关信息,引擎会自动将指令获取的数据加入模板数据中。
数据安全校验指令:该指令会校验支付请求的数据是否合法,如果不合法将会使模板引擎停止继续渲染收银台模板。
步骤7:收银台模板引擎将HTML语法树、CSS语法树以及模板数据组合渲染为电商需要的收银台页面。
步骤8:收银台渲染成功后,电商可以使用JS调用收银支付SDK中内置的支付函数,发起支付请求。目前支持的支付函数有:网页跳转支付函数、二维码支付函数等。
上述支付函数支付作用如下:
网页跳转支付函数:当调用此支付函数时,收银台页面跳转到支付渠道的支付页面,引导用户进行支付,当用户支付成功后,将会通过页面跳转的方式通知电商网站。
详细步骤如下:
步骤1:支付函数将用户选择的支付渠道以及支付的请求数据发送到后台服务器。
步骤2:后台服务器校验数据的合法性,并根据用户的支付渠道构建一个符合支付渠道格式的支付数据并通过用户前台浏览器请求支付渠道。
步骤3:支付渠道收到支付请求后会向用户展示支付信息。
步骤4:用户在支付渠道页面进行支付后,支付渠道会通过用户浏览器通知收银台系统,收银台信息将会将支付结果信息通知给电商。
二维码支付函数:当用户调用此支付函数时,将会在收银台页面生成一个二维码图片,用户扫码二维码即可进行支付。
详细步骤如下:
步骤1:支付函数将用户选择的支付渠道以及支付的请求数据发送到后台服务器。
步骤2:后台服务器校验数据的合法性,请求响应的支付渠道获取二维码支付数据,并将二维码数据返回给前端支付函数
步骤3:支付函数收到二维码数据后,在收银台页面展示二维码。
步骤4:用户扫码二维码进行支付。
步骤5:用户感知到收银台页面已支付后就会将支付信息通知给电商。
如图4:为本发明中的模板指令的工作方式,下面将会结合实例来详细的说明,具体步骤如下:
步骤1:模板引擎在启动时,会加载模板指令配置文件,通过配置文件的描述初始化模板指令,并将器缓存在引擎的指令区域。
步骤2:当电商在收银台模板中通过支付数据使用了模板指令,模板引擎将会自动调用后台服务接口,获取响应的数据。
步骤3:模板引擎在获取到后台服务接口返回的数据后,就会将这些数据加入到收银台模板的数据中。
步骤4:收银台模板引擎使用收银台模板数据和收银台模板渲染收银台页面并将其输出到用户的浏览器中。
Claims (6)
1.一种基于模板的动态支付收银台的实现方法,其特征是,采用统一的支付收银台模板开发规范;以及使用收银台SDK、支付收银台模板渲染引擎、支付收银台模板仓库三个模块;
所述收银台模板开发规范指支付收银台模板文件的指令使用和授权规范,包括收银台模板指令的使用规范以及收银台页面的开发规范;基于这套支付模块的开发规范电商能自定义开发满足业务需求的支付收银台界面;
所述收银台模板指令主要包含如下:
电商信息指令:用于获取电商相关信息,电商能根据该指令信息在支付收银台页面展示其电商信息;
支付渠道指令:用户获取电商支持的支付渠道信息以及每个不同支付渠道的支付方式。使用该指令,电商可以在收银台页面展示其支持的支付方式,以及根据不同的支付方式引导模板引擎执行不同的支付逻辑的处理;
订单信息指令:用于获取支付订单相关的信息,电商能根据该指令在页面上展示给用户需要支付的订单信息;
根据支付环境的不同,系统能使用不同的收银台模板,生成适应当前的支付环境的收银台页面;根据电商的业务需求不同,使用不同的收银台模板,生成满足电商业务需求的收银台页面;
步骤1:商户需要根据模板指令以及支付的SDK,开发一个满足自身业务场景需求的收银台模板;
1)模板引擎支持HTML模板页面的渲染,基于HTML模板功能,电商可以快速的开发一个自定义的收银台网页;
1-1)收银台模板中使用{{data}}来进行数据替换,模板引擎会将{{}}包含的数据替换成真实的收银台数据
1-2)收银台模板中可以在html节点上使用f-if=”expression”指令控制HTML节点是否渲染。
1-3)收银台模板中可以在html节点上使用f-for=”expression”指令控制HTML节点循环渲染。
1-4)收银台模板中可以在html节点上使用f-set=”expression”指令来在模板中设置临时变量
1-5)收银台引擎在渲染收银台页面时,会将模板解析成抽象语法树,并结合支付数据将抽象语法数据渲染为收银台页面
2)该模板引擎中需要内置与支付相关的模板指令,电商在开发模板页面时,使用这些内置的模板指令,获取到支付订单、支付渠道、支付方式、用户信息等相关的数据,方便电商快速集成支付相关功能;
2-1)收银台模板中可以使用{{f.getPayInfo()}}指令来获取支付信息;
2-2)收银台模板中可以使用{{f.getChannels()}}指令来获取支付渠道信息;
2-3)收银台模板中可以使用{{f.getUser()}}指令来获取用户的基本信息以及用户在支付渠道的签约信息;
3)该模板引擎需要内置支付SDK,该SDK需要实现不同支付方式(扫码支付、触屏支付、网银支付等)的支付流程处理,根据用户选择的支付方式(扫码支付、触屏支付、网银支付等)不同,电商需要调用SDK中的不同支付函数来发起支付;在整个支付过程中,电商不需要考虑支付的处理流程,只需要关心最终的支付结果信息即可;
3-1)当用户选择支付渠道并且使用网银支付的方式进行支付,此时电商可以使用JS代码调用SDK中的FPay.formPay(paytoken)函数;在调用此函数后,系统会自动引导用户的浏览器跳转到银行的网银页面;当用户在网银页面支付完成后,银行会引导用户返回收银台系统;此时收银台系统会引导用户返回电商的网站;
3-2)当用户选择支付渠道并选择二维码支付时,此时电商可以使用JS代码调用SDK中的FPay.qrPay(paytoken)函数;在调用此函数后,收银台系统会自动在用户的收银台页面展示一个二维码图片;当用户扫描二维码并完成支付后,收银台系统会自动引导用户浏览器返回电商的网站;
步骤2:商户将上述收银台模板文件发布到支付收银台模板仓库中,进行存储;
步骤3:当商户进行支付时,系统会根据商户的业务以及支付场景,从远程模板仓库或者本地缓存仓库中获取相应收银台模板文件;
步骤4:系统基于模板文件以及支付的相关的接口创建相应的收银台页面并响应给用户进行支付;
步骤2中:为方便管理电商的模板文件,需要搭建一套支付收银台模板文件以及作为资源文件的支付收银台模板仓库;
2-1)商户将模板文件以及资源文件,按照要求打包成一个独立压缩包文件;
2-2)商户在上传模板文件时,支付收银台模板仓库会动态解析模板文件的内容,并校验模板的文件安全性,以及语法的正确性;
2-3)模板文件上传支付收银台模板仓库成功后,支付收银台模板仓库会返回一个该模板文件的唯一标识;使用该标识,电商能指定需要使用的收银台模板文件。
2.根据权利要求1所述方法,其特征是,步骤2中:为保证数据的可靠性以及敏感数据不被第三方窃取,要求对连接到动态收银台上的电商系统做RSA的签名以及加密校验。
3.根据权利要求1所述方法,其特征是,步骤2中:为保证数据的模板文件的安全可靠,电商需要对模板文件进行签名。
4.根据权利要求1所述方法,其特征是,步骤3中:为保证模板文件解析以及渲染收银台的页面高效性,系统在本地建立了一套本地仓库;
3-1)当电商第一次连接到动态收银台页面时,系统会向远程仓库获取模板文件,并缓存在本地仓库中;
3-2)当本地仓库有收银台页面模板时,系统会从本地仓库获取模板文件进行编译;
3-3)当模板文件编译成功后,用于渲染收银台页面。
5.根据其权利1所述方式,其页面渲染工作方式与传统的Freemark、Velocity模板渲染引擎在渲染页面上有相似的功能,收银台模板引擎其特征更多的是集成了支付相关的指令、以及接口服务,更多的是用于简化支付的业务流程,在页面渲染方面只是其一部分的功能,并不是其核心功能。
6.根据权利要求1所述方法,其特征是,系统设有电商管理维护动态收银台模板文件,步骤如下:
步骤1:电商将开发完的支付收银台模板以及资源文件进行签名打包成模板文件
步骤2:电商将打包好的支付收银台模板文件通过仓库管理平台进行上传;
步骤3:仓库在审核完电商的支付收银台模板文件后,发布到收银台模板文件的仓库中;
步骤4:发布到仓库中的支付收银台模板文件,可供所有的模板渲染引擎进行实时的下载,编译并渲染成商户需要的收银台界面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011122804.0A CN112215678A (zh) | 2020-10-20 | 2020-10-20 | 一种基于模板的动态支付收银台的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011122804.0A CN112215678A (zh) | 2020-10-20 | 2020-10-20 | 一种基于模板的动态支付收银台的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112215678A true CN112215678A (zh) | 2021-01-12 |
Family
ID=74055938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011122804.0A Withdrawn CN112215678A (zh) | 2020-10-20 | 2020-10-20 | 一种基于模板的动态支付收银台的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112215678A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112883313A (zh) * | 2021-02-24 | 2021-06-01 | 上海浦东发展银行股份有限公司 | 一种用于信用卡业务数据的智能监控系统 |
CN115270037A (zh) * | 2022-08-01 | 2022-11-01 | 北京美迪康信息咨询有限公司 | 一种修改注册费用类型的方法、系统、智能终端和存储介质 |
CN115586896A (zh) * | 2022-09-29 | 2023-01-10 | 通号智慧城市研究设计院有限公司 | 基于模板引擎的页面项目开发方法、设备及存储介质 |
-
2020
- 2020-10-20 CN CN202011122804.0A patent/CN112215678A/zh not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112883313A (zh) * | 2021-02-24 | 2021-06-01 | 上海浦东发展银行股份有限公司 | 一种用于信用卡业务数据的智能监控系统 |
CN115270037A (zh) * | 2022-08-01 | 2022-11-01 | 北京美迪康信息咨询有限公司 | 一种修改注册费用类型的方法、系统、智能终端和存储介质 |
CN115586896A (zh) * | 2022-09-29 | 2023-01-10 | 通号智慧城市研究设计院有限公司 | 基于模板引擎的页面项目开发方法、设备及存储介质 |
CN115586896B (zh) * | 2022-09-29 | 2023-08-04 | 通号智慧城市研究设计院有限公司 | 基于模板引擎的页面项目开发方法、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112215678A (zh) | 一种基于模板的动态支付收银台的实现方法 | |
KR102402413B1 (ko) | 결제 처리 방법과 장치, 및 지능형 장치 | |
CN113657886B (zh) | 一种支付系统、方法、服务器设备、介质及装置 | |
KR100859502B1 (ko) | 3차원 가상 캐릭터를 이용한 가상 피팅 서비스 제공 방법및 가상 피팅 서버 | |
US8850389B2 (en) | Apparatus and method for generating applications automatically | |
CN111179061B (zh) | 一种资源转移的处理方法、装置及设备 | |
CN118798877A (zh) | 一种基于近场通信的支付方法、装置、设备及介质 | |
Kapitsaki et al. | Model-driven development of composite context-aware web applications | |
CN113222723A (zh) | 票据处理方法、装置、设备和存储介质 | |
Kramer | The java platform | |
CN110020358A (zh) | 用于生成动态页面的方法和装置 | |
CN113382017A (zh) | 基于白名单的权限控制方法、装置、电子设备及存储介质 | |
CN114548963B (zh) | 支付交互处理方法及装置 | |
CN117592994A (zh) | 支付验证方法、装置、设备及存储介质 | |
CN113435880B (zh) | 一种基于聚合码的支付页面发送方法、装置、设备及介质 | |
CN106843818A (zh) | 一种业务模型生成方法及装置 | |
TW201947485A (zh) | 基於doi的支付方法、裝置及設備 | |
CN111402069B (zh) | 公积金数据获取方法、装置、计算机设备和存储介质 | |
WO2015015406A1 (en) | System for distributing software applications to pos payment terminals | |
US11436601B2 (en) | Pre-built user interface for payment system and method | |
CN111801696A (zh) | 支付页面管理方法、设备、支付系统以及存储介质 | |
CN112115738A (zh) | 一种应用于浏览器端的图像识别方法和装置 | |
Akbar et al. | Development of Sales Application Of Prepaid Electricity Voucher Based On Android Platform Using Quick Response Code (Qr Code) | |
Meneses Claudio et al. | Authentication and anti-duplication security system for Visa and MasterCard card | |
US8732145B1 (en) | Virtual environment for data-described applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210112 |
|
WW01 | Invention patent application withdrawn after publication |