代采系统订单模型怎么设计:客户单、采购单、物流单三单关联的一次实践

去年帮一个做泰国市场的朋友搭代购后台,他最头疼的不是流量,是"单子对不上"。客户在独立站下了单,采购这边却不知道该去 1688代采哪一款;等货进了海外仓,物流追踪又和订单对不上号。三个环节各说各话,每天对账能磨掉半天。

后来我们把整套流程收敛成"三单关联":用同一个业务主键把客户单、采购单、物流单串起来。下面是一套可参考的实现思路,像 Taocarts 这类代购系统、代采系统也是沿着类似链路在做。

先定业务主键

客户单生成时,会同步派生出一条采购单草稿。采购单里挂的是 1688 的商品链接和规格,而不是客户在界面上看到的商品名------因为反向海淘的客户看的是本地化多语言界面,采购侧要对的是货源平台。主键统一,后面多货币的结算才不会乱。

采购单驱动自动采购

采购单确认后,系统按商品链接去 1688代采并自动采购,减少手动搬单。这里有个关键约束:收货地址填海外仓,不是客户海外地址,否则包裹直接发到买家手里,关税和售后全乱套。自动采购做的是把这条链路跑通,而不是替你做选品决策。

三单关联:以客户单为主键派生采购单与物流单

class OrderLink:

def derive(self, customer_order):

purchase = PurchaseOrder.create(

source=customer_order.id, # 关联客户单

item_url=customer_order.supplier_link,

ship_to=customer_order.warehouse_id # 发海外仓,非客户地址

)

tracking = TrackingOrder.create(

source=customer_order.id,

purchase_id=purchase.id

)

return purchase, tracking

物流单回写追踪

货到仓、出库、清关、本地配送,每一个节点都把状态回写到物流追踪时间轴。客户在独立站看到的不是割裂的查询,而是一条连续轨迹。跨境电商里分散的动作,靠这一根主键变成了可追溯的线。

三单关联的本质,是把订单、采购、物流这三件事变成一条可追溯的线。无论你用 Taocarts 还是自己搭,先想清楚主键怎么串,后面多语言、多货币的结算才不会乱。

你现在的代购系统,三单是分开管的还是已经打通了?

相关推荐
taocarts_bidfans2 天前
极简架构降载技术|从西班牙红薯饭去繁就简,解析反向海淘系统轻量化架构优化方案
架构·taocarts
2501_912784088 天前
把代购系统 装进容器:一次 Taocarts 独立站的上线记
代购系统·taocarts
2501_912784089 天前
Taocarts 前端国际化实战:多语言与多币种怎么落地不翻车
前端·多语言·taocarts
2501_9127840810 天前
Laravel 多渠道代购订单聚合队列踩坑实战,解决跨平台漏单与同步
php·laravel·taocarts
2501_9127840821 天前
轻量化跨境 SaaS 落地实操:无需源码快速搭建中日双向代购站
代购系统·taocarts
taocarts_bidfans1 个月前
反向海淘订单状态机设计:taocarts 状态流转与并发控制
跨境电商·反向海淘·taocarts
taocarts_bidfans1 个月前
反向海淘跨境缓存架构优化:taocarts Redis分层缓存实战技术
redis·缓存·架构·反向海淘·taocarts
taocarts_bidfans1 个月前
反向海淘系统架构设计与 taocarts 分层实践
系统架构·反向海淘·taocarts
2501_912784081 个月前
跨境电商独立站技术选型:为什么React+Vue+Laravel成为主流?
vue.js·react.js·laravel·taocarts