這事難倒了20多位產(chǎn)品經(jīng)理:訂單號怎樣生成,才能好用又好看?

23 評論 28174 瀏覽 219 收藏 12 分鐘

一個好用又好看的訂單號,應該怎么設計?或者應該具備哪些規(guī)則和依據(jù)呢?看下這篇,或許你會得到不一樣的好思路。

1. 三個真實的案例

案例1

最近面試的將近20位產(chǎn)品經(jīng)理里面,我都會問一道問題:請您為我公司的訂單系統(tǒng)設計一套訂單號的生成規(guī)則。應聘者里面有一兩年的職場新人,也有工作將近十年的老鳥,當然也不乏運營或者開發(fā)轉崗到產(chǎn)品的,有些甚至還做過訂單與支付系統(tǒng),但幾乎所有的面試者都沒能說的很全面。

案例2

去年的某個時間,朋友A所在的公司訂單系統(tǒng)改造升級,開發(fā)在沒有知會運營和市場的前提下將訂單號長度由14位改到了19位(事后得知產(chǎn)品人員當時也不知情),而公司現(xiàn)有的用戶至少70%都在使用貨到付款的刷卡支付,即每次刷卡前都需要輸入訂單號,然后你懂的,整個市場炸鍋了,開發(fā)于是緊急發(fā)版,又把訂單號的長度改回了14位。

案例3

再說說6年前的一個經(jīng)歷。當時朋友(簡稱為C吧)在一家游戲公司做PHP網(wǎng)站開發(fā),C和其他幾位開發(fā)完成了整個游戲的在線支付系統(tǒng),并且聯(lián)調(diào)成功了。系統(tǒng)運行后發(fā)現(xiàn)了一個情況,某游戲玩家充值了5萬塊錢,當時運營人員想查下是什么時間充值的,但后臺系統(tǒng)里面沒有記錄充值時間,無奈之下只能去數(shù)據(jù)庫查到了時間戳,然后根據(jù)時間戳反查出來了充值時間。

2. 近20位產(chǎn)品經(jīng)理給出的答案

再回到上述案例1里面的問題,其實題干里面還隱含了一個關節(jié)信息,即該系統(tǒng)是為我公司設計的,而不是其它公司設計的(我公司現(xiàn)在做酒飲類B2B,未來可能會做B2C或其它)。但回答者幾乎都忽略了這一點。

這些應聘者的原話記不清了,但主要就以下這些思路及其組合,括號里面是我的點評(吐槽):

  • 訂單號由數(shù)字和字母和連字符-組成(您考慮過英文和拼音發(fā)音分不清楚的用戶么?連字符起什么作用?);
  • 訂單號由時間/年月日時分秒和隨機數(shù)組成(僅時間20161111112233就14位了啊,隨機數(shù)你打算再來幾位?考慮到支付峰值每秒10萬筆訂單,系統(tǒng)怎么來隨機?再加5位數(shù)?)
  • 訂單號前幾位標識商品,比如茅臺編碼是001,五糧液是002,既有茅臺又有五糧液是003,后面由日期+隨機碼構成(商品標記會有什么意義?即便商品數(shù)量只有幾十個的情況下,他們的排列組合也很多啊,這個得多少位?);
  • 由下單日期+用戶手機號+隨機數(shù)構成(即便日期只取月和日會占4位,加上11位手機號也15位了,而且日期會重復,每個用戶每天可能會下很多單,而且用戶手機號不具有唯一性。后來有人提過類似的規(guī)則,只不過將用戶手機號換成了唯一的user id,但user id還是會很長);
  • 根據(jù)賣家和買家的ID+隨機數(shù)生成訂單號(如果是C2C網(wǎng)站,用戶體量在幾千萬上下,這樣就需要至少8位來標記用戶ID,隨機數(shù)即便1位的話訂單號也得17位,但實際情況有可能買家經(jīng)常在某個賣家那買東西,3位隨機碼都不一定夠用);
  • 根據(jù)商品的品類+時間+隨機數(shù)生成訂單號(他沒有具體說是大的品類還是小的品類,如果是小的品類,可能也會很多)。

那么問題來了,一個好用又好看的訂單號,應該具備哪些規(guī)則和依據(jù)呢?

在此,我說點自己的理解。

3. 訂單號怎樣生成才好用

回到問題的本質(zhì),訂單號是拿來干嘛用的?誰會關注訂單號?簡而言之,訂單號是用來標記/查詢訂單(查詢的時候可能更關注于物流單號)用的,一般會在訂單有支付/售后/異常問題的時候會用到,也就是說訂單號主要是拿給客服/運營/開發(fā)部門用的。

那么客服在處理一筆訂單的時候,什么格式的訂單號才會好用呢?首先訂單號中最好避免數(shù)字以外的其它字符類型,訂單號盡量短,訂單號盡量能結合當前的業(yè)務情況有特定的標識,如渠道編號(包括平臺、下單渠道、支付方式)、業(yè)務類型和時間信息等。為了便于理解,下面還是舉例說明:

平臺:這個以游戲舉例,目前很多手游除了官方服務器外,還有一些是和其它平臺比如小米、騰訊聯(lián)合運營的,但是充值有可能是用的同一套,這種情況就很有必要在訂單號中標記平臺;

  • 下單渠道:目前很多電商產(chǎn)品都涵蓋多平臺,包括WEB、APP(Pad)和門店(比如1919和蘇寧等),比如通過訂單號發(fā)現(xiàn)近期反映的問題都來自于APP,則理論上可以推斷出APP渠道有問題。
  • 支付渠道:如上文案例2所說,不同支付方式會遇到的問題也是不一樣的,比如貨到付款的刷卡支付僅POS機錯誤代碼就幾十項,而支付寶基本不會有這些。比如APP不支持公司轉賬,如果某訂單有了代表公司轉賬的標識位,不用后臺查詢即可知道這是一筆來自WEB的訂單等等。同樣,用戶反映該訂單號無法使用紅包,客服人員也可以通過支付渠道標識位來識別出是因為紅包功能在APP上沒有上線造成的;
  • 業(yè)務類型:以前在游戲行業(yè)的時候,我們一般會把訂單號的某一位用來標識游戲名稱,比如夢幻西游、魔獸世界和陰陽師分別用1、2、3來標識。這樣遇到相關問題時,不用后臺查詢即可快速識別出問題并把其轉給相關游戲團隊。同理的還有零售和團購,自營訂單和入駐商家訂單,2B業(yè)務訂單和2C業(yè)務訂單;
  • 時間信息:有時間信息會讓客服/運營人員看到訂單時不需要經(jīng)過后臺查詢即可知道該訂單時哪天產(chǎn)生的,可以簡單的判斷問題的緊急程度。同時在B2B業(yè)務中,我們也可以根據(jù)該時間推算出大致的清分結算時間等等。所以我的建議是如果業(yè)務類型決定了客服類問題比較多,則有必要在訂單號里面加上這個信息。但時間的完整格式2016年11月11日 11點22分33秒這樣的顯示出來就是20161111112233,年和時分秒信息略顯多余,只記錄月和日即可;

綜上,我給出的好用的訂單規(guī)則是這樣的:

下單渠道1位+支付渠道1位+業(yè)務類型1位+時間信息4位+下單時間的Unix時間戳后8位(或是這8位數(shù)字加上隨機碼和隨機規(guī)則進行隨機后的數(shù)字)+用戶user id后4位。然后你會說,這樣算下來就訂單號就19位了啊,一點都不精簡啊,不好記不好念不好輸?shù)?。但我說的上面的這些業(yè)務標記,你不一定要全部加上啊。

然后我們再來看看《電商訂單號設計思考》中提到的那2個問題:

問題1:為什么淘寶單號這么長?前幾年還12、13位,現(xiàn)在都16位了?訂單號之所以那么長,我的理解是短了不夠用,畢竟那么大的用戶基礎和訂單量。至于現(xiàn)在都是16位?我查詢了2011年的淘寶訂單,發(fā)現(xiàn)是14位的,并不是該簡友說的12/13位,但由14位擴充到16位,應該很大一部分原因是業(yè)務增長的原因。

問題2:為什么自己的淘寶單號最后4位都一樣呢?這4位數(shù)字代表什么?2011年3月之前的訂單,后4位是不一樣的;3-7月之后(4/5/6三個月我沒有下過單)的淘寶訂單,后4位是一樣的。我猜想可能是user id,后來我驗證了下,一定程度上是的,比如我的ID后4位是1190,訂單的后4位是9910,由此看來,淘寶訂單后4位是將user id后4位簡單處理過的。至于前12位,我 猜想其中有10位可能是由Unix時間戳加隨機規(guī)則生成的。

4. 訂單號怎樣生成才好看

相信很多人都受夠了銀行卡上面不分段的銀行卡號了吧,還有就是快遞單上面不分段的快遞單號碼(順豐的就很好),這些簡直就是反人類設計。其實訂單系統(tǒng)里面也可以借鑒順豐的這個思路分段顯示,方便查看和誦讀。

如果做的再智能點,支持WEB上雙擊復制或者APP上長按復制(點擊后可復制),是不是更好看更人性化更便捷了呢?

kuaididanhao

順豐快遞單號

5.幾句題外話

前幾天我看到了宅媽媽APP的訂單號,4位純自增的數(shù)字,極其精簡。當時我就在想他們?yōu)槭裁磿延唵翁栐O計這么短,后來仔細想了下她們的具體業(yè)務情況,或許是這樣的:處于業(yè)務開拓起步階段的宅媽媽不希望用戶在反饋問題時報上冗長的訂單號,同時她們希望用戶通過訂單號能感受到該APP有很多人在使用并下單,進而打消她們的部分顧慮。

滴滴出行因為每次行程都有司機車牌號,所以在遇到問題時直接反饋“時間+起點+車型車牌號”可能更方便。餓了么同理,我在反饋問題的時候也不會去報訂單號,直接報時間和商家名更方便,訂單號可能在客服處理問題的時候會用的更多一點吧。

 

作者:詹仕波

來源:http://www.jianshu.com/p/3ef577eaacac#

本文由 @詹仕波 授權發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉載。

更多精彩內(nèi)容,請關注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 1、訂單號里面為什么需要加入下單渠道、支付渠道、業(yè)務類型?如果說為了方便運營和客服查看,一般是實際業(yè)務量不大或者對業(yè)務不熟,客服或者運營如何能很快通過數(shù)字組合識別?學習成本太高,尤其之前接觸的客服團隊人員流動大情況下;
    2、特殊性標記單獨字段記錄,感覺沒必要融入訂單,如果是方便區(qū)分,并沒有方便到哪里
    3、能通過系統(tǒng)的直觀就能看到訂單列表,移動端等,通過釘釘?shù)忍峁┬畔⒉樵儥C器人,輸入編號支持自主查詢能更加提效;
    4、案例3有點牽強,充值時間字段是重置時間字段的需求,為何和訂單號關聯(lián)起來,需求分析需要加強

    來自北京 回復
  2. 中國最偉大

    來自河北 回復
  3. 這句話得這么說

    來自河北 回復
  4. 您好有些問題需要了解一下

    來自河北 回復
  5. 訂單號生成的時候,下單渠道在那個階段都不一定有。所以這一點就行不通了

    來自江蘇 回復
  6. 你這樣的自以為是的家伙,害了應聘者,也禍害公司,垃圾還考別人

    來自廣東 回復
  7. 哥們是不是都不設計支付流水號的,下單渠道在訂單生成前不知道的,這個更像是在流水號中體現(xiàn)的。訂單號和流水號不拆分退款和對賬可是麻煩事

    來自浙江 回復
  8. 哪家的HR? ??

    來自北京 回復
  9. 后面提供的方案的部分并沒有全部解決作者對面試者的那些提問和吐槽、質(zhì)疑啊,而且訂單的生成是要看具體業(yè)務需求的,一個面試者對你們業(yè)務未完全了解的情況下當然沒辦法按照你的意愿來答出你想要的方案了,關鍵是看解決問題的思路就好了,又沒有標準答案的

    來自日本 回復
    1. 對,把別人的思路質(zhì)疑吐槽半天,自己想的不也那樣么

      來自北京 回復
  10. 每秒10W筆,你瘋了吧?

    回復
  11. 沒意義的題

    回復
  12. 樓主有沒考慮重復性?樓主“綜上后”設計的訂單號生成方法,是可能存在多用戶一樣的,雖然概率很低。但是在高峰期,比如雙11的前幾分鐘,小概率事件就變成極可能事件

    回復
  13. 訂單號對用戶真的那么重要嘛?分行而議,贊同樓下掃碼那個哥們

    回復
  14. 不知道那些因為被你拒絕的被面試的人,看到下面的回復是什么心情?。。?!

    來自北京 回復
  15. 這個流水號/訂單號不太容易做的太短,希望找到另一個取代的方式或許會更好;就像之前快遞輸入單號,現(xiàn)在都是直接掃碼

    來自北京 回復
  16. 訂單號盡量能結合當前的業(yè)務情況有特定的標識,如渠道編號(包括平臺、下單渠道、支付方式)。這個我有個疑問。用戶的支付動作應該是在訂單生成之后才決定的。你的意思就是用戶點了支付渠道以后才去生成訂單嗎?那用戶還能更換支付方式嗎?

    來自上海 回復
    1. 這個要看具體的業(yè)務邏輯,一般來講訂單號是指支付訂單,也就是會在用戶實際執(zhí)行付款操作的時候生成,這個時候就已經(jīng)可以獲取到支付方式了;如果用戶更換支付方式,會重新生成一個訂單號,之前的訂單號就當作交易失敗來處理

      來自日本 回復
    2. 回復
  17. userId后四位有什么用?userId后四位數(shù)會有重復的吧?訂單號對于用戶并不是高頻需求,甚至用戶常規(guī)情況下都不需要知道訂單號。訂單號的設計符合自己業(yè)務形態(tài)就行了。

    來自湖南 回復
    1. 回復