热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

电子商务平台支付接口开发原理及流程

随着电子商务行业的发展,很多中小企业也加入了电子商务大军,实现电子商务非常重要的一个需求就是有一个强大的电子商务网站平台,用于对企业电子商务相关产品、服务进行管理

随着电子商务行业的发展,很多中小企业也加入了电子商务大军,实现电子商务非常重要的一个需求就是有一个强大的电子商务网站平台,用于对企业电子商务相关产品、服务进行管理等操作。而完成整个电子商务流程最不能越少的环节就是收款,通过网络,将商品、服务的款项支付给电子商务平台的所有者。

我们将电子商务平台所有者,即在电商平台中出售商品或服务的提供者,称为商户。电子商务平台要实现的支付功能,即是顾客通过电商平台进行商品、服务的选择,提交订单,由平台进行价格处理,并为订单计算出需要支付的总额,并提供给顾客进行付款。

商户需要与银行、银联或第三方支付机构进行签约实现网站的支付功能

那么顾客通过网络如何付款,并且商户如何收到钱款并转到自己的银行卡中呢?这就是本篇文章介绍的重点。

我们知道,资金处理必需经由银行,商户可以与某商业银行签约,成功该商业银行的特约商户,由银行提供相关的技术接口,实现在网站中添加相关接口程序,将用户在该银行的相关款项转入到自己的账户中,实现收款。

然而商业银行是很多的,用户所持有的银行卡也是多种多样,所以要实现让大多数银行卡都可以通过网站支付,就需要单独与各家银行进行签约,接入成本非常高。为解决此接入繁琐的问题,我们可以直接与“银联在线支付”进行签约,使用银联提供的支付接口。

“银联在线支付”是中国银联联合商业银行共同推出的集成化、综合性、开放性网上支付平台,全面支持各类型银联卡。方便快捷、安全可靠、全球通用。然而随着人民银行颁发第三方支付牌照,各种第三方支付公司直接与商业银行进行签约并对商户提供支付接入,第三方支付公司接入门槛低、费率低、效率高而且技术开发简单引起了众多商业网站的接入使用。

像大家熟知的微博钱包、支付宝、财付通、快钱等,都是拥有人民银行第三方支付拍照的正规支付公司。

与银联、第三方支付公司签约后的收款流程

商户网站将支付信息提供给支付网关后,网站引导用户进入相关银行网关进行支付,完成后银行扣款,并将支付结果返回给第三方支付公司,支付公司收到结果后将为商户进行支付平台内的入账处理,等待结算。结算完成后,商户即可登录第三方支付平台进行提现,将资金通过第三方支付平台转入到自己的银行卡中。

现在支付公司提供的结算周期一般是T+1或T+0,T+1模式时,即用户支付完毕后,支付公司将在第二天进行结算,商户即可将资金提取到自己的银行卡,或支付公司直接结算到约定的商户收款账户中。如果是T+0的模式,则支付资金可以随时清算,并提现到商户银行卡。

与银联、第三方支付公司签约后的技术开发流程

与支付公司签约后,网站将获得相关开商户号、密钥、支付网关以及开发文档。技术人员通过阅读文档,获取需要使用的相关数据参数,如商品名称、金额等,并通过约定的加密方式及密钥进行加密处理,将以FORM表单POST或GET的方式发送给支付公司提供的支付网关URL。

支付网关收到商户提供的相关参数后将进行数据处理及加密验证,如果数据合格且密钥验证成功,将引导用户进入各家银行选择页面,用户在选择自己使用的银行后,将进入相关银行的支付网关进行支付。

用户在银行网关成功付款后,银行进行扣款,并将支付结果回传给支付公司,支付公司收到银行的结果,同样进行签名验证,并将支付结果信息传递给商户网站。

支付公司将支付结果传递给商户网站也是通过FORM表单的方式,只是该数据传递属于服务器后端处理的。商户网站向支付公司发起支付请求传递支付相关参数时,就包含一个或两个URL,用于指定接收支付结果的URL中。

商户网站接入支付结果有两种方式,一种是通过浏览器进行跳转通知,一种是服务器端异步通知。那么商户的技术人员该如何选择呢?我们对这两种通知类型进行分析。

浏览器跳转通知:这种方式主要是基于用户访问的浏览器,如果用户在银行页面支付成功后,直接关闭了页面,并未等待银行跳转到支付结果页面,那么商户网站就收不到支付结果的通知,导致支付结果难以处理。而且浏览器端数据很容易被篡改,而降低安全性。所以我们推荐技术人员开发时使用后端服务器通知做技术判断,而只将前台通知进行支付相关显示,不进行逻辑处理。

服务器异部通知:该方式是支付公司服务器后台直接向用户指定的异步通知URL发送参数,采用POST或GET的方式。商户网站接收异部参数的URL对应的程序中,要对支付公司返回的支付结果进行签名验证,成功后进行支付逻辑处理,如验证金额、订单信息是否与发起支付时一致,验证正常则对订单进行状态处理或为用户进行网站内入账等。

 

推荐阅读
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 优化联通光猫DNS服务器设置
    本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 本周信息安全小组主要进行了CTF竞赛相关技能的学习,包括HTML和CSS的基础知识、逆向工程的初步探索以及整数溢出漏洞的学习。此外,还掌握了Linux命令行操作及互联网工作原理的基本概念。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
  • 本文探讨了Hive中内部表和外部表的区别及其在HDFS上的路径映射,详细解释了两者的创建、加载及删除操作,并提供了查看表详细信息的方法。通过对比这两种表类型,帮助读者理解如何更好地管理和保护数据。 ... [详细]
  • 本文介绍了如何在具备多个IP地址的FTP服务器环境中,通过动态地址端口复用和地址转换技术优化网络配置。重点讨论了2Mb/s DDN专线连接、Cisco 2611路由器及内部网络地址规划。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 创建第一个 MUI 移动应用项目
    本文将详细介绍如何使用 HBuilder 创建并运行一个基于 MUI 框架的移动应用项目。我们将逐步引导您完成项目的搭建、代码编写以及真机调试,帮助您快速入门移动应用开发。 ... [详细]
  • 梦幻西游挖图奇遇:70级项链意外触发晶清诀,3000W轻松到手
    在梦幻西游中,挖图是一项备受欢迎的活动,无论是小宝图还是高级藏宝图,都吸引了大量玩家参与。通常情况下,小宝图的数量保证了稳定的收益,但特技装备的出现往往能带来意想不到的惊喜。本文讲述了一位玩家通过挖图获得70级晶清项链的故事,最终实现了3000W的游戏币逆袭。 ... [详细]
  • 本文探讨了 RESTful API 和传统接口之间的关键差异,解释了为什么 RESTful API 在设计和实现上具有独特的优势。 ... [详细]
author-avatar
猥琐的爆米花
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有