雙十一剛過(guò)丸冕,京東综液、天貓又創(chuàng)神跡。今天來(lái)跟大家聊一聊購(gòu)物流程中比較重要的一個(gè)環(huán)節(jié):購(gòu)物車(chē)。
話(huà)說(shuō)早期的電商是沒(méi)有購(gòu)物車(chē)這個(gè)東西的产雹,印象中應(yīng)該是從2007年才開(kāi)始有購(gòu)物車(chē)(哎诫惭,又暴露年齡了),早期沒(méi)有購(gòu)物車(chē)的主要原因主要有2個(gè)蔓挖,一個(gè)是那時(shí)候電商還沒(méi)有那么成熟夕土,網(wǎng)購(gòu)的人還沒(méi)有現(xiàn)在這么瘋狂,購(gòu)買(mǎi)頻率不高时甚,最主要的是大多數(shù)人一次只買(mǎi)一個(gè)商品隘弊。另外一個(gè)原因是那時(shí)候還沒(méi)法解決根據(jù)賣(mài)家拆單后貨款怎么分哈踱?同一個(gè)訂單有多個(gè)賣(mài)家郵費(fèi)怎么算等類(lèi)似問(wèn)題荒适。后面隨著整個(gè)電商的發(fā)展才有了購(gòu)物車(chē)這個(gè)東東,現(xiàn)在購(gòu)物車(chē)在整個(gè)購(gòu)物流程中已經(jīng)是非常重要的一個(gè)環(huán)節(jié)开镣,購(gòu)物車(chē)目前主要有下面幾個(gè)主要作用刀诬。
收藏的功能:有的人喜歡把購(gòu)物車(chē)當(dāng)做收藏夾,很多看好的商品直接放到購(gòu)物車(chē)?yán)锩嫘安啤8鶕?jù)用戶(hù)的這個(gè)習(xí)慣購(gòu)物車(chē)的幾個(gè)細(xì)節(jié)也隨之產(chǎn)生變化陕壹。
一個(gè)是默認(rèn)全選功能變?yōu)橛涗浻脩?hù)歷史勾選商品,早期是默認(rèn)將購(gòu)物車(chē)?yán)锏纳唐愤M(jìn)行全選然后進(jìn)行提交訂單树埠,因?yàn)楹芏嘤脩?hù)習(xí)慣將購(gòu)物車(chē)作為收藏夾來(lái)使用糠馆,購(gòu)物車(chē)?yán)锩娴纳唐凡⒉灰欢ㄊ且欢ㄒ?gòu)買(mǎi)的,如果每次都是全選的話(huà)怎憋,用戶(hù)需要將收藏的商品手動(dòng)勾選掉又碌,體驗(yàn)比較不友好,所以慢慢演變成購(gòu)物車(chē)會(huì)記錄用戶(hù)勾選了哪些商品绊袋,在用戶(hù)下次進(jìn)入購(gòu)物車(chē)的時(shí)候只有上次勾選的商品才會(huì)默認(rèn)被勾選毕匀。
另一個(gè)是購(gòu)物車(chē)異常區(qū)域,因?yàn)橛行┥唐房赡芗尤胭?gòu)物車(chē)時(shí)間比較久癌别,那么過(guò)段時(shí)間再打開(kāi)購(gòu)物車(chē)的時(shí)候里面的部分商品信息可能會(huì)發(fā)生變化皂岔,尤其是商品下架或者庫(kù)存為零這種導(dǎo)致用戶(hù)不能正常下單的時(shí)候需要在購(gòu)物車(chē)?yán)锩鎸?duì)這部分商品進(jìn)行提醒,所以也就有了購(gòu)物車(chē)的異常區(qū)域展姐。如下圖所示躁垛。
購(gòu)物車(chē)的降價(jià)提醒,因?yàn)橛脩?hù)把購(gòu)物車(chē)當(dāng)做收藏夾來(lái)用圾笨,那么當(dāng)用戶(hù)加入購(gòu)物的商品有降價(jià)的時(shí)候教馆,現(xiàn)在主流的購(gòu)物車(chē)也會(huì)進(jìn)行降價(jià)的提醒,這需要購(gòu)物車(chē)將當(dāng)時(shí)用戶(hù)加入商品的價(jià)格記錄下來(lái)墅拭,后面用戶(hù)每次打開(kāi)購(gòu)物車(chē)的時(shí)候?qū)Ρ茸钚碌膬r(jià)格活玲,如果有降價(jià)那么在購(gòu)物車(chē)進(jìn)行提醒,用戶(hù)加入購(gòu)物車(chē)的商品一般是比較感興趣的,如果購(gòu)物車(chē)能提示用戶(hù)此商品已經(jīng)降價(jià)舒憾,這樣轉(zhuǎn)化率一般會(huì)比較高镀钓。
購(gòu)物車(chē)另外一個(gè)主要的作用是促銷(xiāo),促銷(xiāo)分為兩大類(lèi):?jiǎn)纹反黉N(xiāo)和范圍促銷(xiāo)镀迂。
單品促銷(xiāo)一般都是對(duì)一個(gè)商品進(jìn)行促銷(xiāo)丁溅,例如:價(jià)格直降,折扣探遵,贈(zèng)品等窟赏,這類(lèi)促銷(xiāo)用戶(hù)比較好理解,在商詳頁(yè)上就可以清晰明了看到規(guī)則箱季,并且用戶(hù)容易計(jì)算是否滿(mǎn)足此促銷(xiāo)規(guī)則涯穷。
范圍促銷(xiāo)比較復(fù)雜些,常用的范圍促銷(xiāo)有:滿(mǎn)減藏雏,滿(mǎn)贈(zèng)拷况,滿(mǎn)返等,這類(lèi)促銷(xiāo)可以在商詳上看到規(guī)則掘殴,但是在商詳頁(yè)用戶(hù)基本搞不清楚目前購(gòu)買(mǎi)的商品是否滿(mǎn)足此促銷(xiāo)赚瘦,這個(gè)時(shí)候就需要在購(gòu)物車(chē)對(duì)用戶(hù)進(jìn)行提醒,主流的購(gòu)物車(chē)基本都有如下功能奏寨。
下面我們來(lái)說(shuō)說(shuō)購(gòu)物車(chē)上面的這些功能是如何實(shí)現(xiàn)的起意?
設(shè)計(jì)購(gòu)物車(chē)首先考慮的是,需不需要登錄態(tài)病瞳?
在生成訂單的時(shí)候揽咕,肯定是需要登錄態(tài)的。但是購(gòu)物車(chē)這個(gè)環(huán)節(jié)仍源,一定需要?jiǎng)討B(tài)嗎心褐?大多數(shù)的網(wǎng)站是必須要登錄態(tài)的。這樣在購(gòu)車(chē)環(huán)節(jié)就可以知道是哪一個(gè)用戶(hù)加入哪一個(gè)商品進(jìn)入的購(gòu)物車(chē)笼踩。但是這樣的體驗(yàn)并不是很好逗爹。如果不需要登錄態(tài),這時(shí)候會(huì)面臨一個(gè)問(wèn)題:沒(méi)有登錄態(tài)我們就不知道這個(gè)商品是哪個(gè)用戶(hù)加入了嚎于。這個(gè)時(shí)候我們就需要一個(gè)叫做離線(xiàn)購(gòu)物車(chē)的掘而。他根據(jù)設(shè)備號(hào)來(lái)記錄哪個(gè)商品加入到哪個(gè)設(shè)備的購(gòu)物車(chē),在用戶(hù)加入離線(xiàn)物車(chē)之后真正去提交訂單的環(huán)節(jié)再提示用戶(hù)需要登錄態(tài)于购。這是一種比較好的體驗(yàn)袍睡。支持離線(xiàn)購(gòu)物車(chē)的話(huà),還會(huì)面臨一個(gè)問(wèn)題是:離線(xiàn)購(gòu)物車(chē)和在線(xiàn)購(gòu)車(chē)如何合并的問(wèn)題肋僧。在用戶(hù)登錄后我們會(huì)去判斷用戶(hù)這個(gè)設(shè)備下面有沒(méi)有離線(xiàn)購(gòu)車(chē)的數(shù)據(jù)斑胜。如果有離線(xiàn)購(gòu)物車(chē)的數(shù)據(jù)控淡,那么我們認(rèn)為他之前已經(jīng)離線(xiàn)加入購(gòu)物車(chē),我們會(huì)將離線(xiàn)購(gòu)物車(chē)的數(shù)據(jù)和在線(xiàn)購(gòu)物者的數(shù)據(jù)進(jìn)行合并止潘。
購(gòu)物車(chē)需要落地哪些數(shù)據(jù)掺炭?
用戶(hù)的購(gòu)車(chē)數(shù)據(jù)一定是會(huì)落到數(shù)據(jù)庫(kù)里的。購(gòu)物車(chē)?yán)锩鏁?huì)展示商品信息凭戴、促銷(xiāo)信息涧狮、庫(kù)存信息。這些信息都需要落地在購(gòu)物車(chē)的數(shù)據(jù)庫(kù)里面嗎么夫?其實(shí)購(gòu)物車(chē)的數(shù)據(jù)庫(kù)只需要落地用戶(hù)和商品的關(guān)系就可以了者冤。其他的信息不需要落地到購(gòu)物車(chē)的數(shù)據(jù)庫(kù)也不能夠落地到購(gòu)物車(chē)的數(shù)據(jù)庫(kù)里。因?yàn)槠渌男畔⒍际菚?huì)隨著時(shí)間的變化而產(chǎn)生變化的档痪。比如說(shuō)商品的價(jià)格涉枫,在用戶(hù)加入購(gòu)物車(chē)的時(shí)候價(jià)格可能是十塊錢(qián)。但是過(guò)了一段時(shí)間可能進(jìn)行了降價(jià)钞它,變成了八塊錢(qián)拜银。如果把商品的價(jià)格落地到購(gòu)物車(chē)數(shù)據(jù)庫(kù)的話(huà)殊鞭,那么用戶(hù)再次打開(kāi)購(gòu)物車(chē)的時(shí)候他是看不到商品的最新的價(jià)格信息遭垛。所以類(lèi)似價(jià)格信息促銷(xiāo)信息庫(kù)存信息這些都是需要實(shí)時(shí)調(diào)用相應(yīng)的系統(tǒng)。
需要跟哪些外部系統(tǒng)進(jìn)行交互操灿?
剛剛提到了購(gòu)物車(chē)的數(shù)據(jù)庫(kù)里面只落地了用戶(hù)和商品的關(guān)系锯仪。那么用戶(hù)看到的購(gòu)物車(chē)?yán)锲渌臄?shù)據(jù)都是在用戶(hù)打開(kāi)購(gòu)物車(chē)的時(shí)候?qū)崟r(shí)去調(diào)用外部系統(tǒng)獲取的。那么購(gòu)車(chē)需要與哪些外部系統(tǒng)進(jìn)行交互呢趾盐?下面列舉幾個(gè)主要的交互系統(tǒng)庶喜。
商品:從商品系統(tǒng)主要是獲取商品的一些基本信息。有商品的主題救鲤、商品的文描久窟、商品的上下架狀態(tài)、以及商品上的一些特殊屬性的標(biāo)志與標(biāo)記位本缠。有一些體驗(yàn)比較好的電商平臺(tái)會(huì)將購(gòu)物車(chē)中商品已經(jīng)下架的商品置灰掉提示用戶(hù)此商品目前不能進(jìn)行購(gòu)買(mǎi)斥扛。
庫(kù)存:從庫(kù)存系統(tǒng)主要是獲取商品目前庫(kù)存數(shù)量情況以及是從哪個(gè)倉(cāng)庫(kù)出貨,后面拆單的時(shí)候會(huì)用到這個(gè)信息丹锹。購(gòu)物車(chē)系統(tǒng)會(huì)進(jìn)行判斷目前商品的庫(kù)存是否滿(mǎn)足用戶(hù)購(gòu)買(mǎi)的數(shù)量稀颁?如果庫(kù)存已經(jīng)賣(mài)光會(huì)將商品制成灰色提示用戶(hù)商品已經(jīng)沒(méi)有庫(kù)存。
促銷(xiāo):促銷(xiāo)是購(gòu)物車(chē)中比較重要的部分楣黍,也是最復(fù)雜的部分匾灶。購(gòu)物車(chē)會(huì)將目前用戶(hù)選中的商品列表傳給促銷(xiāo)系統(tǒng)。促銷(xiāo)系統(tǒng)經(jīng)過(guò)一系列復(fù)雜的運(yùn)算會(huì)告訴購(gòu)車(chē)目前這些商品命中了哪些促銷(xiāo)租漂?因?yàn)橐粋€(gè)購(gòu)物車(chē)?yán)锩娴纳唐房赡苡胁煌碳业慕着@里還要按照商家的緯度再進(jìn)行一輪計(jì)算颊糜。算出每個(gè)商家緯度下面有哪些促銷(xiāo)?可以說(shuō)秃踩,這里是整個(gè)購(gòu)物車(chē)中最復(fù)雜的一個(gè)環(huán)節(jié)芭析。各個(gè)平臺(tái)購(gòu)物車(chē)做得好壞的區(qū)別主要就體現(xiàn)在這里。
以上只是介紹了購(gòu)車(chē)的一些主要邏輯吞瞪。 實(shí)際的購(gòu)物車(chē)要這個(gè)更復(fù)雜一些馁启。