實物流轉與成本流轉的分岔
在本級台階之前的幾篇裡,你學會了在永續盤存制與定期盤存制下追蹤存貨,也認識了銷貨成本公式:期初存貨加上進貨,得出[[cost-of-goods-available-for-sale|可供銷售商品成本]],它隨後一分為二,化作銷貨成本與期末存貨。這一分,聽上去簡單,直到你問出一個尷尬的問題。如果你本月以三個不同價格、把同一種一模一樣的貨品買進三回,如今賣出其中一件——你剛剛賣掉的,「究竟是哪一筆成本」?
這裡有一處關鍵的洞見,能解開整個題目:你遞給客戶的那個「實物」單位,與你繫在這筆銷售上的那筆「成本」,並不必是同一回事。當貨物可以互換時——螺栓、一升升的油、一模一樣的手機殼——沒人分得清第 7 件與第 41 件,老實說也沒人在乎。於是會計師不再費力去追蹤每一件實物,轉而挑一條規則,規定「成本」如何從存貨裡流出、流進費用。這條規則,稱作成本流轉假設,而「假設」二字是誠實的:它是一項選定的約定,而非對「你實際從貨架上抓了哪一個箱子」的描述。
同一家小店,三種答案
讓我們用一個最小、卻仍咬人的具體例子把它釘死。一家店只賣一種小部件。月初空倉,隨後隨物價攀升、分三批進貨——這是一個物價穩步上漲的月份,也正是多數企業實際身處的世界。它先以每件 10 元買進 10 件,再以每件 12 元買進 10 件,再以每件 14 元買進 10 件。這便是 30 件可供銷售,合計成本 360 元——即可供銷售商品成本。當月它賣出 20 件。問題就是那唯一的問題:這 360 元裡,有多少轉為銷貨成本,又有多少作為未售的那 10 件、留在期末存貨裡?
[[fifo|先進先出]]——即 first-in, first-out——假定最老的成本先離開。售出的 20 件,按最早的兩批計價:10 件 × 10,加 10 件 × 12,於是銷貨成本為 100 + 120 = 220。留在存貨裡的,是「最新」的成本——最後那 10 件 × 14,值 140。請留意這個規律:在物價上漲的市場裡,先進先出會把便宜的老成本送進損益表,把昂貴的新成本留在資產負債表上。[[lifo|後進先出]]——即 last-in, first-out——則做鏡像相反的事。它假定最新的成本先離開:售出的 20 件,按 10 件 × 14,加 10 件 × 12 計價,於是銷貨成本為 140 + 120 = 260,而「最老」的成本留在存貨裡——最先那 10 件 × 10,只值 100。
[[weighted-average-cost|加權平均成本法]]則拒絕在新老之間偏袒任何一方。它把每一筆成本糅合成單一的每件均價:總成本 360 ÷ 可供銷售 30 件 = 每件 12 元。此後每一筆銷售、每一件剩貨,都背負這同一個糅合後的 12 元。於是銷貨成本為 20 × 12 = 240,期末存貨為 10 × 12 = 120。三種方法,完全相同的進貨,完全相同的、實物上售出的 20 件——卻得出三個不同的銷貨成本(220、240、260)與三個不同的存貨價值(140、120、100)。無人作弊;各自只是套用了一項不同的、完全正當的假設。
Purchases (prices rising): 10 @ 10 = 100
10 @ 12 = 120
10 @ 14 = 140
Goods available: 30 units, cost = 360
Units sold: 20 Ending inventory: 10 units
Method COGS (20 sold) End. inventory (10 left)
------- -------------------- ------------------------
FIFO 100 + 120 = 220 10 @ 14 = 140
Weighted 20 @ 12 = 240 10 @ 12 = 120
LIFO 140 + 120 = 260 10 @ 10 = 100
Check, every row: COGS + ending inventory = 360這對利潤、資產負債表與稅款做了什麼
回想損益表那級台階:毛利等於銷售額減去銷貨成本。所以銷貨成本越高,報出的利潤就越低,反之亦然——成本流轉的選擇,直通底線。設我們這家店把那 20 件小部件以每件 18 元賣出,收進 360 元銷售額。在先進先出下,毛利為 360 − 220 = 140;在加權平均下,為 360 − 240 = 120;在後進先出下,為 360 − 260 = 100。同一家店、同樣的銷售、同樣出門的小部件,先進先出報出的毛利卻比後進先出肥了 40%。在物價「上漲」的世界裡,這是值得背下的鐵律:先進先出美化利潤與存貨,後進先出則壓低兩者。
這裡有兩個方向相反的誠實難題,把它們點出名字,能護你周全。先進先出在期末存貨裡留下一筆「新鮮、接近當前」的成本——這是好事,因為資產負債表上的價值看起來貼近今日的重置成本——可它把「陳舊、過時」的成本推進銷貨成本裡,於是損益表低估了補貨的真實當前成本,並可能在通膨期間美化利潤(那「利潤」中的一部分,不過是廉價買進的存貨升了值)。後進先出恰恰相反:它把「當前」成本放進銷貨成本,給出一個更貼近現實、更為審慎的利潤數字,卻把「遠古、積滿灰塵」的成本留在資產負債表的存貨裡——這個價值可能漂離現實許多年。每一種方法,都在報表的一端說真話、在另一端含糊其辭。
後進先出在美國公認會計原則下合法,在國際財務報告準則下被禁
這裡有一個讓每個新手都吃驚、而你應當乾脆爛熟於心的事實:後進先出在美國獲准使用,在國際上卻被禁止。美國公認會計原則允許先進先出、後進先出與加權平均。而國際財務報告準則——世界上其餘大多數地方採用的準則——允許先進先出與加權平均,卻乾脆俐落地禁了後進先出。其反對的理由,恰恰是上面那個資產負債表難題:按國際財務報告準則的思路,把陳年的、嚴重過時的成本留在存貨裡,會誤導報表讀者,而準則制定者判定:單單為了讓公司少繳稅,這種扭曲並不值得容忍。
這一分歧帶來一個尖銳的實務後果:一家用後進先出的美國公司,與一家用先進先出的歐洲對手,即便倉庫一模一樣,也「無法」直接相比。要比較它們的分析師,必須在下結論之前,先在腦中把其中一家換算到另一家的基礎上——而事實上,使用後進先出的美國公司被要求披露一項「後進先出準備」,即其後進先出存貨與先進先出本應顯示的數額之間的差距,正是為了讓讀者能在兩者間架橋。這給作為初學者的你的教益,既使人謙卑、也至關緊要:一個存貨數字,從來不是大自然的一樁鐵定事實。它是一種選定方法的產物,你若不先問清「是哪一種方法生出了它」,就無法誠實地讀懂它。
選定、套用,與誠實的提醒
一家真實的公司,究竟是怎麼把這件事定下來的?絕不是憑一時興起、一筆一筆地定——那會是一團混亂,也敞開了操縱之門。這選擇只做一次,寫進政策,此後每一期都一貫地套用。以下,便是任何一種方法背後那道誠實的程序。
- 把可供銷售商品成本加總:期初存貨加上全部進貨(這個數字是固定的、在每種方法下都相同——它就是你將要切分的那塊餅)。
- 選定一項成本流轉假設——先進先出、後進先出、加權平均,或個別認定法——作為一項有文件記錄的會計政策,並一期接一期地堅持下去。
- 把選定的規則套用到已售單位上,算出銷貨成本;凡未分配到銷貨成本上的成本,依定義,就是作為期末存貨留下來的部分。
- 每一次都核對這條恆等式:銷貨成本加期末存貨,必須等於可供銷售商品成本。若不相等,就是有一處算術差錯溜了進來。
三條誠實的提醒,能使這一切不至於誤導你。其一,上文一切都假定物價「上漲」;若物價下跌,先進先出與後進先出便乾脆互換其效果——那時反倒是先進先出給出較高的銷貨成本。方法本身是中立的;製造出差距的,是物價變動的方向。其二,這一切都不改變買賣貨物所產生的任何一元現金——唯有後進先出較低的「稅款」才是一筆真正的現金差異;其餘的,不過是把「哪個期間報哪一筆成本」重新洗了一遍牌。其三,方法之間的差距,唯有當物價變動、且存貨週轉緩慢時才要緊;對一家以幾近恆定的價格買進賣出的公司而言,先進先出、後進先出與加權平均會收斂到幾乎相同的答案。