后臺系統:庫存管理系統
文章對庫存管理系統做了簡單的概括和總結,希望能夠給你帶來一些啟發和思考。
庫存系統作為電商后臺系統中不可或缺的一部分,雖然公司業務千差萬別,但主要的元素卻是相似的,文章主要是根據自己的經驗來淺談一下庫存系統的設計。亦作為一個自我工作的總結和梳理。
庫存管理系統,簡單的說,就是管理商品和數量之間的關系。在功能劃分上,主要包括商品庫存數量、入庫、出庫、盤點幾個部分。
一、商品庫存
即各個商品的數量管理。需要注意的是,在系統里需要保證商品的唯一性。在這里,涉及到以下幾個數量:
- 庫存總數:目前倉庫里還剩余的真實數量;
- 可用數量:可以用于銷售、調撥等的數量;
- 鎖定數量:指已經有了去處或者計劃,但還未真正出庫的數量(該部分在很多系統中,又會根據業務的不同而分成多個部分,在這里,暫且統一稱之為鎖定數量);
當然,在實際設計過程中,還會涉及到其他的值和功能點,以下幾點可作為參考:
- 可以針對每個商品,做一個商品的歷史變動明細、或根據不同維度做一些簡單的數量統計;
- 設置閾值,當數量小于某個值時,給出通知或提示,以告知相關人員進行采購;
- 每個商品從采購到出庫,每一個商品的流向進出都需要有所記錄。在設計過程中,這一點是特別重要的,但卻也是最復雜的,因為每一個業務通常都有很多的環節,會涉及到審批、物流、成本價等等,一個不小心,數據就會出現偏差;
二、商品入庫
商品入庫即商品數量增加的情形,主要包括采購、退貨和調撥幾種情形:
- 采購:即倉庫向供應商進行采購。(在不同的公司不同業務中,可能會涉及到很多的層采購,流程的復雜程度也隨之各不相同);
- 退貨:從商城等的退貨;
- 調撥:從其他倉庫調撥過來;
雖然看起來入庫包含的內容不是很多,但實際上是倉庫系統的設計在后臺系統中卻是較為復雜的一部分。不同的業務,需要考慮的因素太多,每一個商品,每一個批次,每一個入庫的類型,還有相關的物流信息等,都需要反復思考和優化。
那么,下面就來介紹一下商品的入庫流程及每一個環節中可以考慮的問題吧。
1、采購
- 采購單信息:作為一批貨品的采購信息,需要保證商品信息的完善和準確性;
- 預估功能:對各個商品的出庫數量做一個周期性的預估,以便更好的進行庫存控制;
- 采購提醒:在系統中可以設計一個監控功能,當商品可用數量少于一定值時,提醒采購;
- 快捷填寫采購單:因為錄入采購單比較耗時,所以是否可以考慮做一個快捷填充的入口,比如可以根據上次的采購數量生成一個基礎的采購單,然后再在自動生成的采購單基礎上進行修改。當然,此方法是否可行還要看具體業務流程,在此只是作為一個參考;
- 采購審核:在一些業務流程中,填寫采購單后,是需要相關負責人先進行審核的,審核通過后會根據審核結果生成一張真正的采購單。此時,要考慮在審核過程中允許操作的點,比如是否允許修改數量、規格等;
- 采購狀態:需要提供一個可以追蹤的界面,以便知道申請進度;
- 權限:還需要注意的是,每個狀態下每個角色的操作權限。比如哪些人可以申請采購,哪些人可以審核等;
2、退貨
在這里,所指的入庫是已經從倉庫里面發出,之后再進行退還的過程。此過程中需要考慮的點有:
- 退貨狀態:雖然這是屬于訂單系統里面的內容,但在倉庫系統里面最好也有所表示,這樣有利于倉庫管理者監控商品的動態;
- 退貨倉庫:考慮在庫存里,是否需要把退貨部分單獨統一管理;
- 退貨商品成本:在有的系統中,從供應商采購再到最后零售的過程,可能會存在斷層的情況,而且每一批商品的成本價可能會有所不同,此時就需要直接從入庫單開始,實行先買先賣的原則,當退貨時,就需要保證退回的商品退到了原始批次上;這一操作,主要是為了財務對賬做準備
3、調撥
這就涉及到兩個倉庫之間的數量變化了?;旧险{撥中倉庫之間的變化如下:
如上圖所示,若要從倉庫A調撥50個某商品到倉庫B,則:
- 發貨倉庫:發起調撥后,發貨倉庫需要先鎖定庫存,此時,可用數量減少。發貨后,鎖定庫存為0,,總庫存減少;
- 收貨倉庫:在真正入庫之前,一切數量均不改變;
三、商品出庫
商品出庫主要包含:銷售(經銷商/零售/線上/線下/不同平臺和渠道等)、調撥出庫
1、銷售
銷售出庫是最主要的一種出庫形式,雖然銷售的形式、渠道等都各不相同,但主要的邏輯都是相似的。
舉個簡單的例子:倉庫A里面目前還有可口可樂500箱,有100箱已經賣出去了,但買家要明天才來提貨。那么這100箱就會被鎖定,不可再用于其他地方,此時,可用的只有400箱。若買家又不想買了取消了訂單,那么被鎖定的100箱庫存又被釋放,可用數量再次變為500箱。
2、調撥:如入庫調撥所示。
四、倉庫盤點
盤點主要是用于管理倉庫實際值與系統值的差異的。理論上來說,若商品的各個環節數據都準確的話,實際值與系統值應該是一致的。但實際中可能會有一些系統檢測不到的因素影響了真實的庫存,這就需要倉庫進行周期性的盤點了。
盤點之后,若實際值與系統值不一致,就需要把系統值修改正確,這時,可以通過人工或者自動生成出入庫單的形式去修改系統值,而且修改的這部分數據是需要做出標記的,以便于財務之后的對賬。(當然,實際設計中如何處理這部分差異,還要看業務性質和需求)
由于在實際的設計中,倉庫系統涉及到的東西比較多,而且與業務的相關度比較高,不同的業務,設計出來的庫存系統會有很大的差別,這里僅做了一個簡單的概括和總結,若有其他的建議和方法,歡迎交流分享。
相關閱讀
本文由 @姜蕁 原創發布于人人都是產品經理。未經許可,禁止轉載。
題圖來自PEXELS,基于CC0協議
我有一點不理解的地方,庫存管理要不要錄入每一件商品的條碼啊?
oms可以不考慮,WMS考慮。
報損、退回廠家?
已閱
1
:roll
樓主主要分享的是倉儲層的庫存管理,可以分享下銷售層的庫存管理,銷售?調度?倉儲層的庫存流轉嗎?
我覺得。。。。把線下對應的業務流程寫上來。這樣對照著寫會不會更好些 ??
直接拿實例寫確實會比較清晰,但是公司業務及后臺詳細流程還是不太方便直接拿來寫的 ?