1. 三个真实的案例案例1

最近口试的将近20位产品经理里面,我都会问一道问题:请您为我公司的订单系统设计一套订单号的生成规则。
应聘者里面有一两年的职场新人,也有事情将近十年的老鸟,当然也不乏运营或者开拓转岗到产品的,有些乃至还做过订单与支付系统,但险些所有的口试者都没能说的很全面。

案例2

去年的某个韶光,朋友A所在的公司订单系统改造升级,开拓在没有知会运营和市场的条件下将订单号长度由14位改到了19位(事后得知产品职员当时也不知情),而公司现有的用户至少70%都在利用货到付款的刷卡支付,即每次刷卡前都须要输入订单号,然后你懂的,全体市场炸锅了,开拓于是紧急发版,又把订单号的长度改回了14位。

案例3

再说说6年前的一个经历。
当时朋友(简称为C吧)在一家游戏公司做PHP网站开拓,C和其他几位开拓完成了全体游戏的在线支付系统,并且联调成功了。
系统运行后创造了一个情形,某游戏玩家充值了5万块钱,当时运营职员想查下是什么韶光充值的,但后台系统里面没有记录充值韶光,无奈之下只能去数据库查到了韶光戳,然后根据韶光戳反查出来了充值韶光。

php生成订单号这事难倒了20多位产物司理订单号如何生成能力好用又悦目 Vue.js

2. 近20位产品经理给出的答案

再回到上述案例1里面的问题,实在题干里面还隐含了一个枢纽关头信息,即该系统是为我公司设计的,而不是其它公司设计的(我公司现在做酒饮类B2B,未来可能会做B2C或其它)。
但回答者险些都忽略了这一点。

这些应聘者的原话记不清了,但紧张就以下这些思路及其组合,括号里面是我的点评(吐槽):

订单号由数字和字母和连字符-组成(您考虑过英文和拼音发音分不清楚的用户么?连字符起什么浸染?);订单号由韶光/年月日时分秒和随机数组成(仅韶光20161111112233就14位了啊,随机数你打算再来几位?考虑到支付峰值每秒10万笔订单,系统怎么来随机?再加5位数?)订单号前几位标识商品,比如茅台编码是001,五粮液是002,既有茅台又有五粮液是003,后面由日期+随机码构成(商品标记会有什么意义?即便商品数量只有几十个的情形下,他们的排列组合大概多啊,这个得多少位?);由下单日期+用户手机号+随机数构成(即便日期只取月和日会占4位,加上11位手机号也15位了,而且日期会重复,每个用户每天可能会下很多单,而且用户手机号不具有唯一性。
后来有人提过类似的规则,只不过将用户手机号换成了唯一的user id,但user id还是会很长);根据卖家和买家的ID+随机数天生订单号(如果是C2C网站,用户体量在几千万高下,这样就须要至少8位来标记用户ID,随机数即便1位的话订单号也得17位,但实际情形有可能买家常常在某个卖家那买东西,3位随机码都不一定够用);根据商品的品类+韶光+随机数天生订单号(他没有详细说是大的品类还是小的品类,如果是小的品类,可能也会很多)。

那么问题来了,一个好用又好看的订单号,该当具备哪些规则和依据呢?

在此,我说点自己的理解。

3. 订单号若何天生才好用

回到问题的实质,订单号是拿来干嘛用的?谁会关注订单号?简而言之,订单号是用来标记/查询订单(查询的时候可能更关注于物流单号)用的,一样平常会在订单有支付/售后/非常问题的时候会用到,也便是说订单号紧张是拿给客服/运营/开拓部门用的。

那么客服在处理一笔订单的时候,什么格式的订单号才会好用呢?首先订单号中最好避免数字以外的其它字符类型,订单号只管即便短,订单号只管即便能结合当前的业务情形有特定的标识,如渠道编号(包括平台、下单渠道、支付办法)、业务类型和韶光信息等。
为了便于理解,下面还是举例解释:

平台:这个以游戏举例,目前很多手游除了官方做事器外,还有一些是和其它平台比如小米、腾讯联合运营的,但是充值有可能是用的同一套,这种情形就很有必要在订单号中标记平台;

下单渠道:目前很多电商产品都涵盖多平台,包括WEB、APP(Pad)和门店(比如1919和苏宁等),比如通过订单号创造近期反响的问题都来自于APP,则理论上可以推断出APP渠道有问题。
支付渠道:如上文案例2所说,不同支付办法会碰着的问题也是不一样的,比如货到付款的刷卡支付仅POS机缺点代码就几十项,而支付宝基本不会有这些。
比如APP不支持公司转账,如果某订单有了代表公司转账的标识位,不用后台查询即可知道这是一笔来自WEB的订单等等。
同样,用户反响该订单号无法利用红包,客服职员也可以通过支付渠道标识位来识别出是由于红包功能在APP上没有上线造成的;业务类型:以前在游戏行业的时候,我们一样平常会把订单号的某一位用来标识游戏名称,比如梦幻西游、魔兽天下和阴阳师分别用1、2、3来标识。
这样碰着干系问题时,不用后台查询即可快速识别出问题并把其转给干系游戏团队。
同理的还有零售和团购,自营订单和入驻商家订单,2B业务订单和2C业务订单;韶光信息:有韶光信息会让客服/运营职员看到订单时不须要经由后台查询即可知道该订单时哪天产生的,可以大略的判断问题的紧急程度。
同时在B2B业务中,我们也可以根据该韶光推算出大致的清分结算韶光等等。
以是我的建议是如果业务类型决定了客服类问题比较多,则有必要在订单号里面加上这个信息。
但韶光的完全格式2016年11月11日 11点22分33秒这样的显示出来便是20161111112233,年和时分秒信息略显多余,只记录月和日即可;

综上,我给出的好用的订单规则是这样的:

下单渠道1位+支付渠道1位+业务类型1位+韶光信息4位+下单韶光的Unix韶光戳后8位(或是这8位数字加上随机码和随机规则进行随机后的数字)+用户user id后4位。
然后你会说,这样算下来就订单号就19位了啊,一点都不精简啊,不好记不好念不好输的。
但我说的上面的这些业务标记,你不一定要全部加上啊。

然后我们再来看看《电商订单号设计思考》中提到的那2个问题:

问题1:为什么淘宝单号这么长?前几年还12、13位,现在都16位了?订单号之以是那么长,我的理解是短了不足用,毕竟那么大的用户根本和订单量。
至于现在都是16位?我查询了2011年的淘宝订单,创造是14位的,并不是该简友说的12/13位,但由14位扩充到16位,该当很大一部分缘故原由是业务增长的缘故原由。

问题2:为什么自己的淘宝单号末了4位都一样呢?这4位数字代表什么?2011年3月之前的订单,后4位是不一样的;3-7月之后(4/5/6三个月我没有下过单)的淘宝订单,后4位是一样的。
我猜想可能是user id,后来我验证了下,一定程度上是的,比如我的ID后4位是1190,订单的后4位是9910,由此看来,淘宝订单后4位是将user id后4位大略处理过的。
至于前12位,我 猜想个中有10位可能是由Unix韶光戳加随机规则天生的。

4. 订单号若何天生才好看

相信很多人都受够了银行卡上面不分段的银行卡号了吧,还有便是快递单上面不分段的快递单号码(顺丰的就很好),这些切实其实便是反人类设计。
实在订单系统里面也可以借鉴顺丰的这个思路分段显示,方便查看和诵读。

如果做的再智能点,支持WEB上双击复制或者APP上长按复制(点击后可复制),是不是更好看更人性化更便捷了呢?

顺丰快递单号

5.几句题外话

前几天我看到了宅妈妈APP的订单号,4位纯自增的数字,极其精简。
当时我就在想他们为什么会把订单号设计这么短,后来仔细想了下她们的详细业务情形,或许是这样的:处于业务开拓起步阶段的宅妈妈不肯望用户在反馈问题时报上冗长的订单号,同时她们希望用户通过订单号能感想熏染到该APP有很多人在利用并下单,进而打消她们的部分顾虑。

滴滴出行由于每次行程都有司机车牌号,以是在碰着问题时直接反馈“韶光+出发点+车型车牌号”可能更方便。
饿了么同理,我在反馈问题的时候也不会去报订单号,直接报韶光和商家名更方便,订单号可能在客服处理问题的时候会用的更多一点吧。

作者:詹仕波