跨境電商海外倉:WMS的庫齡與倉租功能設(shè)計(jì)

前言
在供應(yīng)鏈行業(yè),大家都很看重庫存的周轉(zhuǎn)率,庫存周轉(zhuǎn)率高就意味著產(chǎn)品賣的快,在短時(shí)間內(nèi)產(chǎn)生盈利的次數(shù)就多;而周轉(zhuǎn)率越低,則表示產(chǎn)品賣出的慢,庫存可能一直積壓在手里,可周轉(zhuǎn)資金的資金也就少了。
在WMS中,庫齡是指貨物在倉庫中存放的時(shí)長,庫齡越大意味著存放的時(shí)間越長,也意味著產(chǎn)品不好賣,可能成為了滯銷品。同時(shí)對于一些第三方倉庫來說,由于倉庫庫容有限,所以為了避免太多客戶的貨物成為死庫存(庫齡特別長),會在倉租方面設(shè)定階梯報(bào)價(jià)。
例如在海外倉領(lǐng)域,很多第三方海外倉都會有30天免倉租的福利。當(dāng)貨物在倉庫的庫齡不超過30天的時(shí)候,就可以免倉租。而超過了30天之后,價(jià)格就會有一個(gè)梯度遞增,即在某個(gè)區(qū)間內(nèi)還算便宜,到了另一個(gè)梯度就特別貴。
海外倉通過這種「懲罰」的方式,來鼓勵客戶盡快提升周轉(zhuǎn)率,盡快處理掉庫齡過長的產(chǎn)品。
所以,對于海外倉WMS來說,精確地計(jì)算庫內(nèi)產(chǎn)品的庫齡是一個(gè)很關(guān)鍵的功能,因?yàn)閭}租的梯度報(bào)價(jià)就需要依賴WMS的庫齡數(shù)據(jù)。
庫齡的計(jì)算
在倉庫中,貨物的數(shù)量是動態(tài)變化的??赡苊刻於紩胸浧啡霂焐霞?,也會有貨品下架出庫,庫存數(shù)據(jù)一直在動態(tài)變化。
庫齡是指貨物在倉庫中待的時(shí)長,一般是用天來統(tǒng)計(jì)的。那如果貨物一直有進(jìn)有出,系統(tǒng)該如何記錄具體的貨物到底在倉庫待了多少天呢?
這個(gè)時(shí)候一般會引入一個(gè)批次的概念,也可以稱為入庫批次號或者上架批次號,在這里我們直接簡單點(diǎn)叫批次吧。

當(dāng)沒有批次的時(shí)候,如果發(fā)生了出庫的行為,系統(tǒng)只能知道剩余的總庫存有多少,但是不知道具體的不同時(shí)間入庫的那一批還剩多少,也就沒辦法統(tǒng)計(jì)具體的庫齡了。

在引入了批次之后,系統(tǒng)遵循先進(jìn)先出(FIFO)的原則來計(jì)算庫齡,就可以精確地知道具體某個(gè)批次出庫了多少,還剩余多少,這樣統(tǒng)計(jì)庫齡的時(shí)候就有依據(jù)了。

有了批次之后,每天會對不同批次剩余的SKU數(shù)量計(jì)算庫齡,相當(dāng)于一次入庫上架獲得一個(gè)批次,但是出庫卻可以分成多次,每次剩余多少都會被記錄,剩余的數(shù)量庫齡會一直遞增,直到全部都出庫完成。
當(dāng)明確了最基礎(chǔ)的庫齡統(tǒng)計(jì)方式之后,接下來我們再來看看關(guān)于倉租這一塊的內(nèi)容。
倉租的計(jì)算
倉租就貨物放在倉庫中需要支付的租金,類似于我們租房子要付的租金一樣。海外倉的倉租計(jì)算一般是按貨品的體積(CBM)來計(jì)算的,也可能有些倉庫會按數(shù)量或者按重量等,再此為了方便闡述,默認(rèn)都是用CBM來計(jì)算。
假如某客戶存放了一個(gè)體積為1CBM,數(shù)量為1000的貨品在倉庫,那么他的倉租就會等于
體積*數(shù)量*庫齡*倉租單價(jià),但是由于數(shù)量與庫齡都是動態(tài)變化的,所以一般會按每日計(jì)算然后做一個(gè)累加,即∑(體積*每日數(shù)量*倉租單價(jià))。
以上的倉租計(jì)算的初始版本,也是最普通的版本。相當(dāng)于先計(jì)算日租,然后再累積成月租。
但是前面也提到了,海外倉一般會采用倉租梯度計(jì)費(fèi)的方式來作為一種「懲罰」,以推動促進(jìn)客戶盡快處理滯銷的產(chǎn)品。而剛剛列出的普通版的倉租計(jì)算公式,是不能支持梯度的,也不同支持「30天免租」之類的優(yōu)惠活動的。
于是我們需要對上述的公式進(jìn)行一個(gè)小小地改動升級,讓它變得更強(qiáng)一些。

當(dāng)需要使用梯度(30天免租也是梯度的一種)的方式來計(jì)算倉租的時(shí)候,就需要記錄下每個(gè)批次的當(dāng)前庫齡是多少,是否達(dá)到了另一個(gè)梯度區(qū)間,以此來確定最終的計(jì)算單價(jià)。
庫齡的拓展知識
1.倒推法與日推法
大家在網(wǎng)絡(luò)上搜索「庫齡」或者「庫齡計(jì)算」的時(shí)候,肯定會看到相關(guān)的一個(gè)回答,如下圖所示。

包括百度百科里也有相關(guān)的闡述。

但是我看了好幾遍都感覺這個(gè)描述有點(diǎn)難懂,因?yàn)楦鞣N細(xì)節(jié)沒有拆解出來,有些人轉(zhuǎn)述的時(shí)候還搞錯(cuò)了名詞之類的。所以索性就是自己用圖中的數(shù)據(jù),再結(jié)合Excel,用笨辦法來倒推了一下數(shù)據(jù),重新拆解了圖中的公式,希望大家能更容易上手理解。

上圖中所說的方式也有人稱之為「倒推法」,其實(shí)本質(zhì)上還是先進(jìn)先出的批次統(tǒng)計(jì)。
以當(dāng)前的時(shí)間的庫存為總數(shù),然后倒推最近的幾次入庫的數(shù)量,看最后會倒推在哪個(gè)批次。
其實(shí)從正向來看也是一樣的道理,當(dāng)前剩余了1000個(gè)庫存,如果系統(tǒng)是嚴(yán)格的先進(jìn)先出的,那么很早的批次肯定早就出庫了,所以現(xiàn)在的1000個(gè)庫存肯定是最近幾次入庫的批次剩余的,于是直接采用倒推法就可以算出這些庫存的平均庫齡是多少。
如果不習(xí)慣用倒推法或者理解有些困難,我建議還是用「日推法」來處理,也可以成為「正推法」。也就是每次入庫記錄一個(gè)批次,然后每天24點(diǎn)定時(shí)統(tǒng)計(jì)一下剩余了多少庫存,庫齡是多少天,這樣匯總起來之后也能算出和倒擠法一樣的結(jié)果。

2.倉租日結(jié)累積法
由于一些WMS可能早期設(shè)計(jì)的時(shí)候沒有考慮批次管理的內(nèi)容,所以在庫存表中沒有記錄批次,也沒有庫齡。
但是倉租還是要計(jì)算,所以在此介紹一種「日結(jié)累積法」,也可以算出倉租。
優(yōu)點(diǎn)是簡單,清晰易懂;缺點(diǎn)就是不能支持梯度計(jì)費(fèi),拓展性不強(qiáng)。

當(dāng)需要計(jì)算倉租的時(shí)候,每個(gè)月的月初導(dǎo)出上個(gè)月的所有的SKU的日結(jié)庫存,然后做一個(gè)匯總,直接拿總數(shù)*計(jì)費(fèi)單價(jià)即可算出月度的倉租。
3.入庫當(dāng)天是否算庫齡
對于一些快進(jìn)快出的倉庫,很有可能出現(xiàn)這樣的場景:一批貨物,上午到倉上架,然后下午就需要下架出庫。
那么,如果是當(dāng)天入,當(dāng)天又出,應(yīng)該算庫齡嗎?
這個(gè)問題有兩個(gè)答案,要么算,要么不算。但是我沒有想好應(yīng)該用哪一種,因?yàn)檫@個(gè)取決于業(yè)務(wù)的需求,但是我猜測大多數(shù)業(yè)務(wù)人員并不會注意到這種細(xì)節(jié),所以還是需要產(chǎn)品經(jīng)理來做定奪。
從統(tǒng)計(jì)的難易程度或者開發(fā)的成本來說,我個(gè)人會傾向于:當(dāng)天入庫和當(dāng)天出不算庫齡。
因?yàn)槊刻焱砩系膸忑g統(tǒng)計(jì)是在24點(diǎn)左右統(tǒng)計(jì)當(dāng)時(shí)的庫存結(jié)余,然后從庫存結(jié)余去匹配對應(yīng)的批次分別有多少數(shù)量。
如果當(dāng)天入了100個(gè),當(dāng)天又出了100個(gè),那么統(tǒng)計(jì)的時(shí)候庫存結(jié)余是0,就無需計(jì)算庫齡。
如果當(dāng)天入了100個(gè),當(dāng)天只出了80個(gè),那么統(tǒng)計(jì)的庫存結(jié)余就是20,也就意味著有20個(gè)在倉庫待了一天(需計(jì)算庫齡),其他80個(gè)是不算庫齡的。
如果是當(dāng)天入,當(dāng)天出需要算庫齡,那么統(tǒng)計(jì)的方法就需要一點(diǎn)點(diǎn)改變。
還是先每天晚上24點(diǎn)左右統(tǒng)計(jì)當(dāng)時(shí)的庫存結(jié)余,但同時(shí)還需要去統(tǒng)計(jì)當(dāng)天入庫的批次的數(shù)量,然后兩者做比對。
如果當(dāng)天入了100個(gè),當(dāng)天又出了100個(gè),那么統(tǒng)計(jì)的時(shí)候庫存結(jié)余是0。但是入庫記錄是100,也就是當(dāng)天入了100,這100需要算1天的庫齡;
如果當(dāng)天入了100個(gè),當(dāng)天只出了80個(gè),那么統(tǒng)計(jì)的庫存結(jié)余就是20。但是入庫記錄是100,也就意味著兩者有重復(fù),應(yīng)該以入庫記錄為主,取入庫記錄的值,而不取庫存結(jié)余的值,所以還是需要算100個(gè)為1天的庫齡;
當(dāng)?shù)诙鞗]有入庫批次的時(shí)候,這個(gè)時(shí)候再去統(tǒng)計(jì)庫存結(jié)余的時(shí)候,就可以直接按庫存結(jié)余來計(jì)算庫存了。有值則算1天的庫齡,無值則不算庫齡,也就是庫存出完了。
最后
庫齡和倉租算是WMS中很核心也很關(guān)鍵的一個(gè)模塊的了,但是這兩天我在找相關(guān)資料的時(shí)候發(fā)現(xiàn),全網(wǎng)好像都沒有人寫這一塊的內(nèi)容。即使有寫,也是一些搬運(yùn)和邏輯不通的段落,讓我一度懷疑這個(gè)東西到底是不是太難了?還是說其實(shí)很簡單大家都不想寫?
既然沒人來寫,那我就來個(gè)拋磚引玉吧。如果我寫的內(nèi)容是正確的,有用的,那么就能幫助很多也需要做這一塊功能的朋友;如果我寫的內(nèi)容是錯(cuò)誤的,那么也能接受一些大佬的指點(diǎn),盡快改正我的一些錯(cuò)誤認(rèn)知。
反正怎么算都不會虧。??
如果你對我寫的這一篇內(nèi)容有何高見,歡迎與我私聊溝通,期待你的回復(fù)。


