B2C自營(yíng)商城的訂單設(shè)計(jì)方案
去年我們的美妝社區(qū)APP,上線了自有商城。之后經(jīng)過(guò)多次版本迭代,商城系統(tǒng)的模塊已經(jīng)基本健全,值此時(shí)間分享一些經(jīng)驗(yàn)出來(lái),希望可以共同交流。
有了商品之后才有可能產(chǎn)生交易。所以先講了《B2C自營(yíng)商城的商品設(shè)計(jì)方案》,這篇講解我們的訂單模塊怎么設(shè)計(jì)。
一、訂單是什么
訂單的本意是指你購(gòu)買(mǎi)商品之后生成的單據(jù)憑證,只是在電商中,它是虛擬的。
主流的下單方式
整個(gè)電商體系中常見(jiàn)的下單方式有2種,購(gòu)物車(chē)下單和直接下單。
淘寶稱之為購(gòu)物車(chē)結(jié)算和立即購(gòu)買(mǎi),正常情況下你可以任選一種去購(gòu)物。但是在秒殺之類的特殊場(chǎng)景中,只支持直接下單。
京東也稱之為購(gòu)物車(chē)結(jié)算和立即購(gòu)買(mǎi),不同的是,正常情況下你必須通過(guò)購(gòu)物車(chē)去結(jié)算,秒殺情況下你可以選擇立即購(gòu)買(mǎi)和購(gòu)物車(chē)結(jié)算。
訂單的類型
由于不同的下單方式,其實(shí)導(dǎo)致訂單的類型有2種。
簡(jiǎn)單來(lái)說(shuō)購(gòu)物車(chē)結(jié)算的訂單肯定包含了基于sku不同的多個(gè)子訂單,而每個(gè)子訂單包含n件同一sku。而立即購(gòu)買(mǎi)的訂單是包含n件同一sku。
然后淘寶的PM因?yàn)楹罄m(xù)增加了購(gòu)物車(chē)結(jié)算這一下單方式,而不得不想出一套規(guī)則,那就是父訂單和子訂單。當(dāng)然還有很多其他原因。
此次購(gòu)物,整體稱之為交易,生成了一個(gè)父訂單號(hào)。如果它是購(gòu)物車(chē)結(jié)算,那么有N個(gè)子訂單。如果他是立即購(gòu)買(mǎi),那么只有1個(gè)子訂單。
從技術(shù)角度來(lái)定義,那就是trade稱為父訂單,order稱為子訂單,或者說(shuō)trade是一筆交易單,子訂單是每筆交易中的商品明細(xì)單,trade與order可以是一對(duì)多的關(guān)系,trade是由使用購(gòu)物車(chē)生成。
當(dāng)一筆交易只有一個(gè)子訂單,那么tid=oid,這個(gè)時(shí)候主要看trade結(jié)構(gòu)體里面的內(nèi)容,當(dāng)一筆交易有多筆子訂單(類似于購(gòu)物車(chē)購(gòu)買(mǎi)方式),那么tid=oid,這個(gè)時(shí)候主要看order結(jié)構(gòu)體里面的內(nèi)容。
二、訂單的邏輯拆分
根據(jù)以上的規(guī)則,訂單邏輯上面應(yīng)該按照這樣的方式來(lái)拆分。
基于這樣的設(shè)計(jì)方式,才可以去支持退款退貨,以及設(shè)計(jì)活動(dòng)、優(yōu)惠券等營(yíng)銷功能。
三、訂單的金額拆分
進(jìn)而得到訂單的金額是如何拆分的,其中營(yíng)銷得來(lái)的優(yōu)惠拆分到每一個(gè)子訂單,以及每一個(gè)sku的實(shí)際支付單價(jià)。
四、訂單狀態(tài)機(jī)
訂單的狀態(tài)是一個(gè)很復(fù)雜的事情,決定著用戶,商家的每一個(gè)操作。
不含退款退貨
如果你們的商城比較特殊,無(wú)需提供退款退貨功能,那么訂單狀態(tài)機(jī)比較簡(jiǎn)單。
包含退款退貨
那么比較復(fù)雜,相當(dāng)于多了一層狀態(tài)機(jī)。具體可以查看我的另外一篇文章《如何繪畫(huà)狀態(tài)機(jī)來(lái)描述業(yè)務(wù)變化》。
五、總結(jié)
訂單模塊的架構(gòu)設(shè)計(jì),以上基本上把主要的內(nèi)容講了一遍。按照這樣的方式去設(shè)計(jì),至少可以兼顧大部分商城的訂單需求。
以上內(nèi)容可以點(diǎn)擊我的訂單模塊原型來(lái)詳細(xì)查看。
至于訂單模塊和商品模塊,和營(yíng)銷模塊的耦合,后續(xù)的文章會(huì)再講講。
相關(guān)閱讀
B2C自營(yíng)商城的優(yōu)惠券設(shè)計(jì)方案(上篇)
#專欄作家#
浪子,人人都是產(chǎn)品經(jīng)理專欄作家,業(yè)務(wù)型PM,浪子PRD系列51prd.com,公眾號(hào)langzisay。
本文由 @浪子 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
當(dāng)一筆交易只有一個(gè)子訂單,那么tid=oid,這個(gè)時(shí)候主要看trade結(jié)構(gòu)體里面的內(nèi)容,當(dāng)一筆交易有多筆子訂單(類似于購(gòu)物車(chē)購(gòu)買(mǎi)方式),那么tid=oid,這個(gè)時(shí)候主要看order結(jié)構(gòu)體里面的內(nèi)容。
這句里怎么有2個(gè)tid=oid?
原型還要收費(fèi)
如果能結(jié)合實(shí)例就好了,訂單是根據(jù)什么進(jìn)行拆分,店鋪,折扣,優(yōu)惠券
錢(qián)款全退為什么sku會(huì)有未全退的情況,一個(gè)訂單SKU退完了,錢(qián)才全退的吧
一個(gè)訂單的所有SKU都申請(qǐng)過(guò)退款并退了錢(qián),不代表所有的錢(qián)都退了。
你可以去淘寶或者有贊等去下一個(gè)多sku訂單試試。
一個(gè)父訂單下面的子訂單全部申請(qǐng)退款,不應(yīng)該是退所有實(shí)際支付的錢(qián)嗎(包郵的情況下)?非包郵要扣運(yùn)費(fèi)?希望大佬點(diǎn)撥下
你的文章我都讀了,迷妹迷妹 ??
好難得,tks ??
還是沒(méi)有明白父訂單和子訂單的意思 求賜教啊
一個(gè)訂單里面如果包含多個(gè)物品,這些物品可以根據(jù)某些規(guī)則分成一些子訂單,這樣便于后期對(duì)這些分出來(lái)的子訂單進(jìn)行特殊的操作:評(píng)論啊/退換貨/啊。。。。我理解的
去淘寶用購(gòu)物車(chē)下單,使用優(yōu)惠券。
然后退款其中的個(gè)別商品。
跑幾次,就能理解父訂單和子訂單的運(yùn)用場(chǎng)景了。
子訂單號(hào)一般是背后的邏輯吧?對(duì)客展示一般只展示一個(gè)父訂單號(hào)吧?
嗯,通常是這樣。但是不展示子訂單號(hào),不代表不展示子訂單信息和子訂單功能。
感謝,我也是這么理解,正準(zhǔn)備提問(wèn)的
很有幫助,感謝浪子,一系列電商產(chǎn)品的經(jīng)驗(yàn)分享干貨十足啊,作為電商產(chǎn)品新人受益頗多
哈哈,有用就行。謝謝支持哈