电商平台核心组件之财务系统设计及实现
作者:禅与计算机程序设计艺术
1.简介
随着互联网行业的蓬勃发展,传统的实体零售模式正在被数字化、网络化所取代。而在电商平台上也将成为新的流量入口。为了能够顺应这个快速发展趋势,电商公司必须要面对一个复杂的财务系统。这里主要讨论电商平台中的财务系统设计及其相关技术。我们认为,电商财务系统应该集成完整的订单处理、支付处理、结算处理等流程模块,实现订单实时性、多渠道支付、全网货币结算、客户积分体系、消费者数据分析、流量变现等能力的集成,达到金钱自由流通的目的。
首先,本文通过分析一个典型的电商财务系统,为读者展示了一个实际可行的解决方案。然后,本文还会提出一些技术实现上的建议,如微服务架构的应用、数据库分表的设计、消息队列的选用等。最后,本文还会涉及到其他相关技术,如搜索引擎的集成、安全机制的考虑等。希望读者能够从中受益,并共同推动电商平台领域的创新与进步。
一、财务系统概述
电商财务系统的组成和职责可以总结为以下几个方面:
- 订单管理:包括订单审核、订单生成、订单跟踪、订单修改、取消订单等;
- 支付管理:包括线下支付、预付卡充值、企业打款、在线支付、第三方支付(微信支付、支付宝)等;
- 结算管理:包括实时结算、跨境结算、结算账期、纳税清单、货币结算等;
- 客户积分管理:包括积分发放、积分规则设置、积分兑换、积分排行榜等;
- 数据分析:包括用户画像、商品热度、运营商分布、产品购买习惯、地区市场占有率等;
- 流量变现:包括商家销售佣金、广告流水、提现申请、充值到账等。
其中,订单管理、支付管理、结算管理三个模块是电商财务系统最重要的功能模块。其中订单管理模块负责订单信息的收集、存储、分类、审核、分配等工作,支付管理模块则主要进行线下支付、在线支付等方式的支持,结算管理模块则包含了实时结算、跨境结算、纳税清单、货币结算等功能模块。另外,流量变现模块则扮演着关键角色,包括商家销售佣金、广告流水等活动。除此之外,还有一些辅助性功能模块,如客户积分管理、数据分析、提现申请、充值到账等。
本文主要关注订单管理、支付管理、结算管理这三个核心模块,将这些功能进行有效整合,形成一套完整的电商财务系统。
二、基础知识介绍
(1)支付方式
支付方式是指电子支付机构或实体机构向个人或企业开具的各种支票、汇票、银行存款转账凭证以及保函等形式的支付手段,其主要用于支付个人或企业的交易费用、贷款、债权或股权。目前电商平台一般采用信用卡支付、电话支付、转账支付等多种支付方式。
信用卡支付是最常用的支付方式,通常由个人持卡人提供的有效卡号、密码、证件等作为凭据,通过交易机构或银行系统验证后发起支付指令,由交易收付双方完成交易。
电话支付则属于非主流支付方式,由个人或企业通过短信、电话等方式发起支付请求,无需进行身份认证,直接由交易收付双方联系完成支付。
转账支付则需要用户向电商平台发送指定金额的转账账户,电商平台将转账账户上的款项划拨至用户账号内。
(2)支付网关
支付网关是一种商业支付软件系统,它允许交易平台和第三方支付机构建立连接,处理支付过程中产生的所有交易信息,确保交易的安全、有效执行。它分离了第三方支付机构和交易平台之间的接口协议,使得第三方支付机构只需提供接口服务端,就可以通过该网关与交易平台连接,实现真正意义上的跨境支付。支付网关的功能可以大致分为四个层次:
- 支付接口接入层:该层主要负责对接交易平台和各类支付方式,将第三方支付机构提供的支付接口暴露给交易平台,使得交易平台可以通过统一的支付接口与第三方支付机构进行交互。
- 支付服务层:该层对接第三方支付机构的支付接口和交易系统,并完成交易的确认、撤销、退货等业务操作。
- 支付安全层:该层提供交易安全的保证,包括身份验证、权限控制、数据加密等。
- 支付风控层:该层根据支付过程中的风险因素,即时提醒交易双方,并制定相应的防范策略,有效保障交易的平安。
目前,电商平台普遍采用的支付网关有微信支付、支付宝支付、银联支付、微信支付等。
(3)支付场景
普通购物场景
- 用户选择商品后点击“立即购买”按钮,进入商品详情页。
- 点击“去支付”按钮,跳转至支付页面。
- 选择支付方式,输入支付密码或支付码等信息,进行支付。
- 支付成功或失败后,跳转回订单详情页。
团购、秒杀场景
- 用户选择团购商品或者秒杀商品后,进入商品详情页。
- 点击“立即抢购”按钮或“立即秒杀”按钮,跳转至秒杀或团购页面。
- 用户注册或登录后,提交订单信息。
- 支付成功或失败后,自动通知用户。
分期付款场景
- 用户选择产品后,选择购买期限、首期付款额、首期利息、期末付款额、尾期利息等信息,提交订单。
- 支付成功或失败后,自动提醒用户。
众筹场景
- 用户创建项目,指定金额,备注信息等信息。
- 指定筹集目标并发布众筹信息,用户提交订单。
- 通过线下支付或电话支付,支付完成后,平台发放奖品。
三、订单管理模块
电商平台中的订单管理主要分为以下几步:
- 用户选择商品、添加购物车、填写相关信息等。
- 确认订单信息(如送货地址、支付方式、发票要求等)。
- 将订单信息存储到数据库。
- 待用户支付(线下支付或在线支付)。
- 订单支付成功后,订单状态变更为已支付。
订单管理模块的特点如下:
- 流程简单明了,一步到位。
- 操作简单,容易上手。
- 数据准确,精确到每个商品。
- 可追溯,历史记录清晰。
(1)订单信息
订单信息指的是电商平台中用户提交订单时的相关信息,包含订单编号、收货人信息、购买商品信息、支付方式、支付状态等。例如:
| 字段 | 示例 |
|---|---|
| order_id | eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjYWxjdWxhdGVkIjoxNjM2MzQwMjQwfQ.BtGqTMzWJqWiojCV1cmAGuW5PBuzLLTbbKMegSapA9s |
| user_id | AAAAAs2lkjh08923 |
| order_time | 2021-11-01 10:00:00 |
| receiver | 张三 |
| mobile | 15000000000 |
| address | 江苏省南京市浦口区浦口大道12号 |
| total_price | 100 |
| goods | [{“goods_id”: “p9w97fwe”, “name”: “apple”,“num”: 2,“price”: 10}] |
| pay_type | 微信支付 |
| status | 等待支付 |
(2)订单流程
订单流程指的是电商平台中订单状态变化的流程图。一般情况下,订单的生命周期包括刚创建的订单、已付款的订单、已发货的订单、交易成功的订单以及交易关闭的订单五个阶段。
创建订单
- 用户选择商品后,点击“立即购买”或“加入购物车”,填写相关信息并勾选“我已阅读并同意《XXX条款》”。
- 系统将订单信息存储到数据库,订单状态变为“待支付”。
- 用户输入收货地址和支付方式。
- 系统跳转到支付页面,用户选择支付方式并输入支付密码或支付码。
- 如果支付成功,系统自动将订单状态变为“已支付”,如果支付失败,系统将提示支付失败原因并重新进入支付页面。
- 当用户支付成功时,订单信息将被系统更新,用户进入订单详情页。
取消订单
- 用户可以在订单详情页看到订单信息,点击“取消订单”按钮。
- 系统将订单状态设置为“已取消”,用户订单将无法正常支付和使用,但已支付金额不予退还。
确认收货
- 用户收到商品后,点击“确认收货”按钮。
- 系统将订单状态设置为“交易成功”,用户订单所得积分将发放到用户账户中。
四、支付管理模块
支付管理模块是电商平台中的核心模块之一。电商平台采用第三方支付平台进行支付,即用户向第三方支付平台支付费用,第三方支付平台再将费用转移给电商平台的支付账户。因此,支付管理模块涉及第三方支付平台、电商支付网关等多个环节,需要考虑多种支付方式和各种支付接口,能有效保障用户支付的安全、准确、迅速。
(1)微信支付
微信支付是由腾讯公司推出的移动支付平台,为用户提供手机 App 和微信内置浏览器上免签约支付功能。微信支付采用客户端和服务器两种模式运行,支持微信公众号、小程序、H5 应用等多种应用场景,用户可以扫码、刷脸、手机验证码等方式支付。
微信支付架构
微信支付分为微信内支付和公众号支付两种模式,微信内支付是指微信用户在微信客户端内支付,支付成功后微信客户端会打开对应 App,微信支付 SDK 会调用微信 APP 的支付 API 向商户后台请求支付结果,微信 APP 会弹窗提示支付结果。
公众号支付是指商户在微信公众号内,将商品或服务通过公众号发给微信用户,用户点击菜单栏中的“付款”按钮,进入到微信支付付款界面,扫描用户的收款码,完成付款。
微信支付架构中,微信支付有微信支付开发包,它封装了微信支付接口,使用非常方便。同时,微信支付提供了支付工具类,可以帮助商户快速接入微信支付,让商户更加聚焦自身业务,减少微信支付的学习成本。
微信支付接口
微信支付有微信支付接口、微信支付工具类、微信 JS API 三大接口。
- 微信支付接口:微信支付接口包括微信支付接口、JSAPI、Native 等接口,分别用于商户、公众号开发者、移动端开发者等不同的使用场景。微信支付接口有统一下单、查询订单、关闭订单、申请退款、查询退款、下载对账单、批量转账等接口。
- 微信支付工具类:微信支付工具类包括统一下单、异步通知、生成二维码、签名等方法,帮助商户快速接入微信支付。
- 微信 JS API:微信 JS API 是微信公众号开发者用来操作微信支付的接口,包含调起支付、获取支付结果、关闭窗口、拉起收银台等接口,帮助公众号快速接入微信支付。
微信支付安全
微信支付具有强大的安全防护能力,包括 SSL 加密传输、数据加密、参数加密、IP 白名单、密钥管理、证书管理等。微信支付接口仅支持 HTTPS 请求,采用 JSON 数据格式,通信数据加密,通信过程不可抵赖。
(2)支付宝支付
支付宝支付是中国领先的电子支付平台,是国内唯一一家支持境外站点支付、多种支付方式的支付公司,为个人、企业、商家提供一站式支付解决方案。支付宝支付支持支付宝移动端 APP、PC 网站、公众号、小程序、服务窗等多种支付场景,用户可以使用支付宝 App、扫码支付、蚂蚁花呗、余额宝、分期付款、借记卡快捷支付、信用卡支付等多种方式付款。
支付宝支付架构
支付宝支付由支付宝支付宝、支付宝开放平台、支付宝公共号、支付宝商家平台四部分组成。
- 支付宝支付宝:支付宝支付宝是一个独立的支付系统,它包括支付宝网页、支付宝移动APP、支付宝生活号等产品。支付宝网页为个人和企业提供线上支付服务,支付宝移动APP为用户提供移动端支付服务,支付宝生活号为商家提供线下支付服务。
- 支付宝开放平台:支付宝开放平台是一个开放的支付平台,为第三方支付机构和应用提供支付服务,包括支付接口、开发工具、安全保障等。支付宝开放平台由支付宝商家平台和支付宝生活号共同维护,能够满足第三方支付机构快速、低成本地对接支付宝生态系统。
- 支付宝公共号:支付宝公共号是支付宝提供的一系列开放平台,主要包括支付宝收钱吧、支付宝钱包、支付宝斗鱼、支付宝创享卡、支付宝零钱、支付宝花呗、支付宝分期、支付宝储蓄卡、支付宝理财等。
- 支付宝商家平台:支付宝商家平台是支付宝为商家提供的支付管理、运营、财务、统计、报表、支付结算等能力,包括商家中心、商家支付宝、商家收银台、商家服务窗等功能,满足商家日常管理需求,提升商家运营效率。
支付宝支付接口
支付宝支付接口包括 PC、移动端、公众号、服务窗、商家支付、开放平台等多种使用场景的接口,其中包括支付宝网页支付、支付宝移动端支付、支付宝电脑网站支付、支付宝公众号支付、支付宝服务窗支付、支付宝商家支付、支付宝开放平台支付等。
支付宝支付安全
支付宝支付具有强大的安全防护能力,包括 SSL 加密传输、数据加密、参数加密、数据访问权限限制、密钥管理、证书管理等,其支付接口采用 HTTPS 通信,通信过程不可抵赖。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
