解構(gòu)電商、O2O用戶端“背后”的邏輯

23 評論 36056 瀏覽 323 收藏 15 分鐘

之前和不少剛畢業(yè)的產(chǎn)品同學(xué)交流過,用戶端是他們十分偏向選擇的產(chǎn)品線??稍趯嶋H的工作過程中,由于不太了解中后臺的情況加之邏輯上沒有那么成熟的經(jīng)驗,很容易出現(xiàn)界面設(shè)計完成后無法和中后臺的相關(guān)同學(xué)交流實現(xiàn)。所以用戶端產(chǎn)品也需要了解基礎(chǔ)的業(yè)務(wù)邏輯規(guī)則和關(guān)聯(lián)。今天我們就分享下電商、020用戶端“背后”的邏輯。

用戶端的內(nèi)部構(gòu)造

用戶端一直有著迷之尷尬的地位,既充當門面卻深受各個系統(tǒng)的“牽連”。所有系統(tǒng)的最終表現(xiàn)都依賴于用戶端的展現(xiàn),所以說用戶端是產(chǎn)品價值的最終體現(xiàn)。我們來看下用戶端內(nèi)部都有什么。

電商的用戶端主要功能是提供購買和商品展示,并能夠協(xié)助用戶進行個人服務(wù)管理。從用戶的階段來劃分,主要分成售前、售中、售后三個階段。其中個人信息的管理屬于貫穿整個使用過程。

售前環(huán)節(jié):實現(xiàn)用戶購買前的瀏覽和檢索。

  • 首頁(對接CMS、商品、類目、推薦、促銷、廣告、搜索)
  • 頻道頁(對接CMS、商品、類目、推薦、廣告)
  • 專題頁(對接促銷、商品、CMS、廣告)
  • 搜索結(jié)果頁(對接搜索、商品、推薦、廣告)
  • 搜索分類頁(對接類目、商品、搜索、推薦、廣告)
  • 發(fā)現(xiàn)頁(對接商品、搜索、推薦、促銷)

售前環(huán)節(jié)主要功能是完成商品的展示,頁面的信息布局和UI是此類模塊的首要功能。由于電商平臺商品、類目眾多,所以數(shù)據(jù)多是由負責(zé)規(guī)則整合的系統(tǒng)完成數(shù)據(jù)處理,然后通過頁面、內(nèi)容生成系統(tǒng)完成前臺的展示工作。

售中環(huán)節(jié):實現(xiàn)用戶的購買

售中環(huán)節(jié)也叫購買流程,是實現(xiàn)用戶從下單到完成支付的整個過程。這個流程是整個電商體系中最重要的環(huán)節(jié)。其中交易、訂單和支付系統(tǒng)負責(zé)這個環(huán)節(jié)的核心邏輯。

  • 商品詳情頁(對接商品、促銷、推薦、廣告、CMS、會員)
  • 購物車(對接商品、促銷、交易、推薦、廣告),其中庫存部分可放入商品或交易中合并計算,也可單獨由庫存系統(tǒng)提供處理。
  • 結(jié)算頁,也叫訂單確認頁(對接商品、促銷、交易、訂單、會員)
  • 收銀臺,也叫支付頁(對接支付、訂單)
  • 支付完成頁,也叫訂單完成頁(對接訂單、推薦、廣告)

(1)購物車

購物車環(huán)節(jié)要考慮庫存是否需要做占用。購物車做預(yù)占庫存可以第一時間通知用戶庫存狀態(tài),但有可能出現(xiàn)較多占用后但未生成訂單的情況。而生成訂單后占庫存則能保證訂單和庫存匹配率最大,但用戶在下單后才被告知無庫存,用戶體驗相對較差。

常規(guī)做法會在購物車環(huán)節(jié)設(shè)置數(shù)量閾值,庫存小于閾值顯示用戶庫存緊張。然后在下單環(huán)節(jié)完成扣減庫存的情況。如果是秒殺或者是類似唯品會的搶購模式,則可以在購物車扣減庫存,增加倒計時(如15分鐘)提示提高用戶搶購感。

促銷金額的計算也是購物車需要考慮的主要邏輯之一,由于商品詳情頁都是單品信息,所以組合促銷的金額計算是在購物車體現(xiàn)的。

另外,作為電商的“近親”020領(lǐng)域的購物車相比傳統(tǒng)電商處理方法有所差異。020的購物車原則上很多是不跨店鋪銷售的,所以購物車是存在于單個店鋪中且以浮層的方式展示。一般來說為避免對于服務(wù)器造成壓力過大的問題,不是所有的添加商品的操作都是請求后端服務(wù),在邏輯處理上為了保證一致需要前后端都考慮邏輯統(tǒng)一的問題。

(2)結(jié)算頁

結(jié)算頁可以說是電商用戶端比較復(fù)雜的頁面之一。這里面涉及到配送邏輯判斷,送達時間計算,運費計算,訂單計算及分攤等。

配送邏輯判斷:根據(jù)提供的配送方式結(jié)合倉配情況和移倉的邏輯來判斷來預(yù)計送到的時間。此部分的物流配送的路程情況也會影響運費的計算邏輯。當無法單倉滿足或者移倉滿足時,有可能需要拆多個包裹從不同的倉發(fā)送。

運費計算:根據(jù)后臺設(shè)置的運費模板來計算實際應(yīng)該收取的運費。運費模板是指設(shè)定好的一套運費規(guī)則,比如滿XX收多少等。

訂單計算:訂單計算主要涉及到交易單各個子單之間促銷優(yōu)惠的計算和金額分攤。

  • 優(yōu)惠計算主要包括優(yōu)惠券和促銷活動的金額計算。一般情況后臺會有一定的計算優(yōu)先級,比如計算促銷活動的金額,完成后再看是否滿足優(yōu)惠券的滿減金額。計算時需要考慮促銷范圍,如商家還是全場。
  • 金額分攤,電商的支付類型發(fā)展到如今是越來越豐富。信用卡、匯款、支付寶、微信、白條、積分、禮品卡等等各種各樣??紤]到訂單逆向(整單退,部分退)的情況,需要將所有支付的金額包括優(yōu)惠券都分攤到每一個商品上,以便退款時可以保證金額不錯。分攤計算有兩個要注意的事情,一個是各項支付方式退款的優(yōu)先級,先退什么在退什么。原則上先退成本低的,在退成本高的。二是當分攤時金額除不盡的時候多余的部分如何分攤,小數(shù)后三位的時候四舍五入還是直接舍掉。這個規(guī)則要和后端、報表保持一致,避免出現(xiàn)一分錢誤差的烏龍。

(3)收銀臺

訂單生成后要通過支付系統(tǒng)完成支付操作,所以收銀臺的主要對接系統(tǒng)就是支付系統(tǒng)。對接第三方支付的時候需要注意的是,第三方支付客戶端返回的狀態(tài)原則上不能作為最終支付成功的狀態(tài),要通過第三方支付服務(wù)端返回信息為準。理論上這兩種狀態(tài)是同步的,但設(shè)計時要考慮交互和數(shù)據(jù)傳輸異常的情況。

售后環(huán)節(jié):提高信息透明和服務(wù)體驗

  • 訂單詳情頁
  • 訂單列表頁
  • 在線客服

售后環(huán)節(jié)主要是訂單生成后到訂單交付完成的整個過程。這部分主要的功能就是跟客服和訂單打交道。這里就不展開說了。只說一些需要注意的經(jīng)驗。

  1. 訂單列表一般會保留三個月左右的用戶顯示數(shù)據(jù),而用戶端的刪除不是物理刪除只是訂單上打標記而已。
  2. 在處理數(shù)據(jù)時考慮到歷史數(shù)據(jù)較多,部分O2O的APP會使用歷史訂單數(shù)據(jù)和當日訂單數(shù)據(jù)分開的讀取的方式。
  3. 訂單詳情一般會有再來一單的功能,電商系統(tǒng)只需要判斷是否存在可售賣的SKU即可。而O2O則需要增加判斷區(qū)域?qū)傩浴?/li>
  4. 在線客服要考慮是否是對接第三方應(yīng)用,在嵌入對方的SDK時一些通用的標準要符合滿足(比如IPV6)。另外對方SDK包是否會對自己APP的大小造成較大影響也需要注意。

個人中心:服務(wù)中轉(zhuǎn)站

個人中心作為用戶的統(tǒng)一服務(wù)中心,里面承載了所有涉及用戶資產(chǎn)和服務(wù)的信息。大多數(shù)是信息匯總查看的頁面(如我的訂單、我的積分、我的優(yōu)惠券等)。

這里強調(diào)一個小的細節(jié),APP用戶端有時候排查問題需要了解用戶的基本信息,比如版本號,手機型號。用戶的反饋很容易出現(xiàn)信息誤差,他們大多會說已經(jīng)是最新版了。所以獲取版本信息的渠道可以在個人中心中。我以前的一個經(jīng)驗可以給大家借鑒。在意見反饋自動增加版本,手機型號信息回傳,或通過關(guān)于APP的部分讓用戶一鍵復(fù)制以便提供給客服進行排查問題。

用戶端的“親屬關(guān)系”

用戶端作為“門臉”,和各個系統(tǒng)有著錯綜復(fù)雜的關(guān)系,讓我們看下他們之間的關(guān)系是如何。

在整個電商系統(tǒng)體系里面。用戶端需要面對眾多系統(tǒng),而這些系統(tǒng)的數(shù)據(jù)又相互依存,他們之間通過API進行傳輸對接。

直接對接系統(tǒng)

頁面系統(tǒng)

  • CMS系統(tǒng)
  • 廣告系統(tǒng)

購買流程

  • 交易系統(tǒng)
  • 支付系統(tǒng)
  • 訂單系統(tǒng)

規(guī)則整合

  • 搜索系統(tǒng)
  • 推薦系統(tǒng)
  • 促銷系統(tǒng)

用戶體系

  • 會員系統(tǒng)
  • 客服系統(tǒng)

這些直接提供數(shù)據(jù)給用戶端,負責(zé)用戶端的生養(yǎng)問題,用戶端對他們有著很強的依賴。在設(shè)計時要充分考慮這些系統(tǒng)的數(shù)據(jù)邏輯情況,下面我們會詳細說明下如何考慮這些系統(tǒng)。

間接對接系統(tǒng)

  • 庫存系統(tǒng)
  • 商品系統(tǒng)
  • 價格系統(tǒng)
  • 物流系統(tǒng)
  • 商家系統(tǒng)

間接對接的系統(tǒng)多是提供基礎(chǔ)信息的系統(tǒng)或者平臺。他們承擔著數(shù)據(jù)最底層的管理工作,他們的結(jié)構(gòu)決定了前端展示的信息數(shù)據(jù)項。由于涉及的細分系統(tǒng)眾多,這里指列舉了部分主要系統(tǒng)。

API

API主要是傳輸通道,理論上不做邏輯運算。但現(xiàn)在很多實際的情況下API也需要夾雜很多業(yè)務(wù)規(guī)則的計算和處理。API主要包括幾個部分的功能:

(1)數(shù)據(jù)傳輸

API的基本功能,完成基本數(shù)據(jù)的傳輸,往往是以頁面為單位計算API的數(shù)量。

(2)數(shù)據(jù)整合

由于數(shù)據(jù)可能涉及到多個系統(tǒng)之間的調(diào)用,所以API內(nèi)部可能需要進行數(shù)據(jù)的整合。比如促銷活動信息需要調(diào)用促銷信息和商品基礎(chǔ)信息。

(3)部分邏輯處理

在實際產(chǎn)品迭代過程中,考慮到APP發(fā)版時間限制等制約因素,一些處理邏輯可能需要放在API進行操作,比如部分信息項的篩選、ABtest、灰度發(fā)布切換邏輯。另外有些功能為了快速上線且后續(xù)可以進行延展,一些固定的邏輯也會考慮先不做后臺,在API中通過配置文件的方式來實現(xiàn)。比如提示文案、icon等。

(4)緩存功能

提供給用戶端的數(shù)據(jù)中,不是所有數(shù)據(jù)都需要實時更新獲取的,所以API會將部分更新周期較長的數(shù)據(jù)放入緩存中定時去更新。比如用戶信息、類目信息。

數(shù)據(jù)統(tǒng)計系統(tǒng)

數(shù)據(jù)統(tǒng)計系統(tǒng)主要用來處理用戶端埋點的信息,用于監(jiān)測流量數(shù)據(jù)的情況。

一般數(shù)據(jù)統(tǒng)計重要分為使用第三方或者自建BI系統(tǒng)兩種情況。用戶端需要做的主要是進行埋點事件的命名和選擇觸發(fā)點。

?結(jié)言

用戶端看似只是關(guān)注用戶體驗和界面功能設(shè)計,實則反應(yīng)了整個電商生態(tài)下所有系統(tǒng)運作的最終結(jié)果。了解中后臺的基本邏輯和流程有助于在構(gòu)想界面時提高可行性和合理性。

相關(guān)閱讀

解構(gòu)電商、O2O:訂單系統(tǒng),平臺的“生命中軸線”

解構(gòu)電商、020:查閱商品的“檔案柜”

解構(gòu)電商、020:探秘搜索系統(tǒng)的“簡歷”

解構(gòu)電商、020:促銷系統(tǒng)的“進化”之路

解構(gòu)用戶消費心理:卓越的服務(wù)體驗始于「心」

 

作者:高暉(微信號公眾號@產(chǎn)品老高),10余年IT經(jīng)驗,互聯(lián)網(wǎng)老兵。

本文由 @高暉 微信公眾號原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 高暉老師也在人人都是產(chǎn)品經(jīng)理旗下起點課堂開設(shè)了《訂單產(chǎn)品全流程設(shè)計與實戰(zhàn)》課程,系統(tǒng)講解了訂單產(chǎn)品的底層邏輯,教你學(xué)會從0到1搭建訂單產(chǎn)品以及現(xiàn)有產(chǎn)品的優(yōu)化升級方法。感興趣的同學(xué)可以添加蘑菇老師(ID:qdxymg)咨詢,或者戳右側(cè)鏈接了解>>https://996.pm/76PEA

    來自廣東 回復(fù)
  2. 有沒有2B的內(nèi)容呀

    來自湖北 回復(fù)
    1. 我現(xiàn)在又做020了

      來自湖北 回復(fù)
    2. 2B確實沒整理,最近比較忙了。

      來自北京 回復(fù)
  3. 感謝分享

    來自上海 回復(fù)
  4. 感謝分享,會一直關(guān)注您的文章

    來自江蘇 回復(fù)
  5. 好文章 高質(zhì)量

    回復(fù)
  6. 很清晰,最近做電商,幫我理清了好多模塊,贊

    來自北京 回復(fù)
    1. 謝謝贊賞,后續(xù)會梳理電商的一些具體系統(tǒng)和模塊。歡迎持續(xù)關(guān)注

      來自北京 回復(fù)
  7. 很多實踐中的小經(jīng)驗和小細節(jié)分享,很落地的一篇文,喜歡。

    來自北京 回復(fù)
    1. 謝謝,后續(xù)我會陸續(xù)寫一些電商、020系統(tǒng)的解構(gòu)系列,可以持續(xù)關(guān)注

      來自北京 回復(fù)
  8. 對于新手,很有幫助哦

    來自廣東 回復(fù)
    1. 謝謝關(guān)注

      來自北京 回復(fù)
  9. 最近要開始著手公司的一個電商項目,臨時抱抱佛腳。文章很受教,感謝作者從售前售中售后勾勒了一個電商平臺的框架,個人對貫穿其中的個人信息管理這塊一直理不清,期待作者更細致的分享

    回復(fù)
    1. 謝謝認同,后續(xù)我會逐步解構(gòu)一些電商的系統(tǒng)情況??梢猿掷m(xù)關(guān)注

      來自北京 回復(fù)
  10. 唉,這等文章也能上頭條

    來自北京 回復(fù)
    1. 這個文章開始寫的時候定位是給初級產(chǎn)品了解基本結(jié)構(gòu)快速入門的,所以很多東西并沒有展開細化。畢竟太深的東西對于初級產(chǎn)品可能不太容易理解。所以里面不少內(nèi)容在高級別的產(chǎn)品看來有些簡陋了。呵呵

      來自北京 回復(fù)
    2. 呵呵,有什么好文章還望不吝分享

      來自廣東 回復(fù)
    3. 呵呵,有什么好文章還望不吝分享

      來自北京 回復(fù)
  11. 后臺的業(yè)務(wù)邏輯是非常復(fù)雜的。但優(yōu)惠券這一塊,要做完善都很難。

    來自湖北 回復(fù)
    1. 嗯。同意。這里只是對關(guān)聯(lián)的關(guān)系和情況做了一些說明。并沒有涵蓋所有的點了。

      來自北京 回復(fù)
  12. 我是一個新入行的小菜鳥,這個文章對我很有用

    回復(fù)
    1. 謝謝回復(fù),能夠有用就是對我最大的獎勵了。呵呵

      來自北京 回復(fù)