一切的产品都是围绕着业务模式进行展开。交易产品本质也是将交易流程进行产品化,通过低耦合、可扩展的产品架构,来支持交易业务的复杂性、多样性。
在这里,我们先看一下整个的交易流程是怎样的链路:
![](https://img.kancloud.cn/fd/8d/fd8d9006d281e7f2515c3a8a38594a99_764x515.png =500x)
整个交易流程归纳起来,总共有如下几步:
```
1. 用户登录
2. 逛街选货
3. 货物放入购物车
4. 提交购物车
5. 填写收货地址和交易手段(匿名支付、找人代付、货到付款)
6. 进入收银台选择支付方式
7. 支付完成,等待收货。
```
将整个流程进行产品域的划分,可以划分为:
1、商品域:
> 上架并展示商品,包括商品的名称、详情、评价、促销信息等等。
> *这个属于业务前端,不在交易产品中进行赘述。*
2、交易域:
> 提供购物车功能,允许用户将商品加入购物车,并在购物车中进行增删改查;同时在用户进行支付之前,收集用户的收货地址(因为快递需要邮费)、以及他们的交易类型。
> 这个域负责收集客户的交易数据,包括:买什么、送到哪里、总价多少、怎么交易(自己付还是别人代付)。
3、支付域:
> 交易数据提交给支付域,支付域打印出支付单给到客户(可以理解为在超市里面打印出来的购物小票),客户在此选择具体的支付手段,现金还是刷卡,又或者是赊账。支付完成后,客户就可以把货提走或者供应商就会把货寄出给客户。
> 这个域负责完成客户的支付行为,包括:展示支付单、提供支付方式、处理支付流程。
4、账户域:
> 支付之后,不论成功失败,都会生成一笔支付流水。每一笔支付流水都会挂在客户主体下,这就要求为每一个注册成功的客户生成一个结算账户。每个结算账户下面关联该账户所有的支付流水。
> 这个域负责建立客户的结算账户,以及维护支付流水和账户的对应关系。