跳至內容
課程內容

9之三. 退貨全流程・文字速查版(整併・可列印)

📄 本頁為文字速查版:把退貨、換貨、退款、清算四段整併成一頁,不含截圖,適合列印或快速查找。逐步操作與實機截圖請看本章各節。

0. 先看這裡:貨、金、票是三件獨立的事

產生什麼說明
退貨收貨單貨實體收回來、庫存回沖
貸方憑單(RINV)退錢給客戶
發票作廢或折讓稅務憑證處理

三者各自獨立,缺一項不影響其他。

合約數量永遠不改:原銷售單的「訂購數量」保持原始值(它是合約憑證),變動只反映在「已交貨」「已開票」這些淨值欄位上。

1. 三種發起退貨的入口

入口怎麼進特性適合
① 到貨退貨已完成的交貨單 → 按「到貨退貨」預設整批退,自動建立並驗收收貨單貨已送到、現場要退,最省事
② 從銷售訂單銷售訂單 → 按「退貨 / 退款」可挑品項、挑數量,不自動驗收,需倉管核實客戶來電登記退貨,貨還沒回來
③ 脫鉤模式銷售 → 退貨/退款 → 新增,銷售訂單欄留空不需對應任何訂單/出貨單/發票舊系統(鼎新/Excel)時代賣出的貨

入口①與②最大的行為差異

  • ①到貨退貨:按下去,退貨收貨單自動建立且自動驗收完成,貨立即回沖庫存。
  • ②從銷售訂單:按「建立退貨單」後,收貨單只到「準備好」狀態,不會自動入庫。要等貨真的送達、倉管清點無誤後按「核實」,庫存才會變動。
這是刻意設計:②這條路常是業務/客服先幫客戶登記退貨意願,貨還沒真的送回倉庫,當然不能先假裝入庫。

入口②的兩個保護

  • 一張訂單分多次出貨時,會先跳「選擇出貨單」精靈,強迫你選清楚是針對哪一張出貨單退貨——確保每批退貨都精準對應回原始出貨批號,不破壞追溯鏈。
  • 「可退數量」是即時算的:已交貨量扣掉「所有還沒被取消的退貨單」已占用的量。就算那張退貨單還是草稿,占用的量也先扣——避免兩張並存的草稿退貨單互不知情、一起退超過實際出貨量。

2. ⭐ 按鈕有順序(最關鍵的一節)

⚠ 直接按「標記完成」,狀態會變完成,但什麼都不會產生——不會有退貨入庫單、不會退錢、原單數量也不會變。這是最常見的誤操作。
① 建立退貨單 → 貨收回來,原單已交貨量同步回沖 ② 建立退款 → 退錢(需先有已過帳發票) ③ 標記完成 → 結案;之後才會出現換貨鈕 ④ 建立換出 → (需要才按)補一張換出交貨單

3. 退貨:批號身分保留

流程:交貨單按「到貨退貨」→ 客戶自動帶出 → 按「建立退貨單」→ 系統自動產生並驗證收貨單。

  • 「客戶」欄位不需手動填,系統依來源出貨單自動帶入——這是身分保留設計的一環。
  • 退貨單編號格式:RMA/年份/流水
  • 退回的貨沿用「原出貨批號」記帳,不會另開新批號——這是追溯鏈不斷點的關鍵。

4. 退款:兩個必須知道的設計

4-1 硬性前置:來源訂單必須先有「已過帳」的發票

草稿發票不算數。順序錯了系統不會事後補救。

沒做會看到:「操作無效:來源銷售單上找不到已過帳的客戶發票」 怎麼補:回銷售訂單 → 建立發票 → 確認過帳 → 再回退貨單按「建立退款」。

4-2 ⛔ 退款金額與貨物是否真的退回來,系統不勾稽

「建立退款」只跟「有沒有已過帳發票」掛勾。系統不會檢查對應的退貨收貨單是否已驗收,甚至不要求你做過「到貨退貨」。

也就是說,操作上完全可能:

  • 只退款、不退貨
  • 退貨數量與退款數量對不起來

系統都不會提醒你。這件事要靠人自己勾稽。

4-3 退款金額怎麼調

沒有獨立的「自訂退款金額」欄位——靠改退貨單明細的「退款單價」達成。例如要「退 5 罐但只退 3 罐的錢」,就把退款單價改小。

4-4 同產品多發票列,退款不會翻倍(已 UAT 驗證)

同一張發票上同一產品可能拆成好幾列(分批議價、分段出貨)。退款時系統以「產品」為單位彙整:貸方憑單只保留一列承載該產品的退貨總量,其餘同品列自動移除。

實測:來源發票同產品兩列(6+4),退貨 5 件 → 貸方憑單僅一列、數量 5.00(不是兩列各 5 變成 10)。

一張退貨退款單只會產生一張貸方憑單,重複建立會被擋。

5. 換貨

5-1 雙重防呆與順序限制

防呆內容
第一層退貨單狀態必須先是「完成」,「建立換出」按鈕才出現。這是隱藏規則,畫面不會提示。
第二層同一張退貨單只要還有一張「沒被取消」的換出交貨單,就不能再建第二張(冪等保護)

⚠ 順序不能顛倒:「換貨數量」欄位只有在草稿狀態可編輯,一旦標記完成就變唯讀。若已完成才想換貨,要先按「重設為草稿」。

正確順序:草稿時先填換貨數量 → 標記完成 → 按鈕才出現 → 建立換出

5-2 兩種換法

  • A 換 A(換回同品):「換出產品」欄留空,填換貨數量。
  • A 換 B(換不同品):「換出產品」欄填 B 品。

系統會產生換出交貨單差額憑單。退回的金額走貸方憑單、換出的價值走「出B開票(差額)」,兩張相抵就是實際差額,不用手算。

UAT 實例:退松露醬 2×650=1,300,換出西班牙酸豆 2×120=240,相抵淨退 1,060

5-3 ⚠ 換貨數量沒有上限檢查

系統不會擋「換貨數量大於退貨數量」。理論上可以填一個比退貨量還大的換貨量,要靠人工自己注意

若換出多於退回,系統會在退貨單留言提醒:記得就差額開立換出發票(追加應收),避免多送的貨沒請款。這是提醒、不擋單。

5-4 要重建換出單

先到換出交貨單按「取消」,回退貨單再按一次「建立換出」。

6. 破損退貨:兩段式(不需自己分流)

退貨原因設為「破損」時,系統自動分兩段走:

  1. 先把貨退回正常庫位,讓原銷售訂單的「已交貨數量」正確回沖
  2. 退貨收貨單驗收完成後,自動產生報廢單把破損品扣掉

結果:良品回到可售庫存、破損品不回可售,兩件事同時成立。報廢單會帶原批號,追溯鏈不斷。

⛔ 請不要再另外建「內部調撥」——那是舊版作法,現在多做一次會產生不必要的調撥單,庫存數字也會被重複調整。

客戶端沖銷:貨破了但客戶不寄回

貨在客戶手上就地丟棄時,系統從客戶庫位報廢,倉庫庫存完全不動,也不產生退貨收貨單。這與倉庫報廢是兩種不同的報廢,報表上分得出來。

若退貨貨況完好而客戶留貨不退,系統視為商業折讓:只開折讓退款、不記報廢(貨還好好的,記報廢是造假)。

7. 清算與結算(累積退貨)

7-1 ⛔ 整章的總開關:公司要先設定「客戶累積退貨入庫」作業類型

公司設定裡這個欄位若沒指定成某個特定收貨作業類型,任何一張收貨單都不會被認定為「清算收貨」,「退貨單據」智慧按鈕的自動化完全不會啟動,畫面上也不會有任何提示

系統判斷的唯一依據,是比對收貨單的作業類型是否等於公司設定的那個類型(完全比對,不是模糊比對)。

7-2 流程

① 用「客戶累積退貨入庫」類型收貨並驗證完成 ② 按「退貨單據」智慧按鈕 → 自動建立草稿單據 ③ 填「議定退款單價」→ 按「確認」(狀態→已確認) ④ 按「建立結算單並配對」→ 自動比對帳上實收 vs 單據聲明 ⑤ 數量有差異 → 選「數量差異處置」(必填) ⑥ 按「過帳(沖清算+開退款憑單)」 ⑦ 按「完成」→ 單據同步變「已結算」

7-3 幾個容易卡住的點

「議定退款單價」跟成本無關:填的是「你打算退多少錢給客戶」,故意設計成跟商品實際成本脫鉤。「議定成本單價」是財務算存貨成本差異用的另一個獨立數字。

「已結算」這個狀態,單據自己沒有按鈕能到達:狀態列有草稿→已確認→已結算三格,但表單上找不到任何按鈕走到「已結算」——那一格是被動的,由結算單「完成」時反向寫回。在單據表單上找「結算」按鈕會找不到。

數量差異處置是必填:盤盈/認損/掛應收/爭議。選「掛應收」或「爭議」的話,系統不會自動記帳,只在聊天記錄留言提醒你另外走應收/爭議流程——不要誤以為選了就等於系統幫你處理好了

⛔ 過帳不可逆:按下去立刻建立並過帳一筆正式會計分錄,同時開出退款貸方憑單,沒有一鍵撤銷。過帳後發現填錯,只能請會計手動沖銷分錄。過帳前務必覆核「議定退款單價」與「數量差異處置」。

7-4 ⛔ 產品類別的「庫存計價」必須是「自動」(2026-08 新增)

退貨清算的分錄是「收貨時貸記退貨待結算科目、過帳時借記沖回」兩段湊成一對。

但產品類別的「庫存計價」設為「手動」時,收貨根本不會產生任何會計分錄,也就沒有那筆貸記。此時若讓它過帳,就只會單邊借記,在退貨待結算科目上留下一筆永遠沖不掉的掛帳——而且畫面上看起來一切正常

所以系統在過帳前會先檢查,只要有任何一項商品所屬的產品類別是「手動」就直接擋下,並列出是哪些類別。

怎麼改:庫存 → 配置 → 產品 → 產品類別 → 開啟被列出的類別 → 把「庫存計價」由「手動」改成「自動」。

⚠ 這是會計政策決定,不是隨手可改的設定——切換時 Odoo 會重估現有庫存並開始產生存貨分錄。請先與會計確認後再改,不要為了讓單過去就自己切。 若貴公司確定要維持「手動」,請回報,清算流程需要另行設計。

7-5 ℹ️ 三個會計科目「用到才會發現」

「過帳」背後需要三個科目:清算科目、成本差異科目、數量差異科目——都設在「產品類別」上,UI 上都不是必填。

平常收貨、確認單據、配對都不會檢查它們,只有真的按下「過帳」、且真的產生了對應差異時,系統才逐一檢查,缺哪個就擋下整張單。

因此常出現「上次結算都好好的,這次卻突然被擋」——因為上次剛好沒觸發到那個差異類型。建議一開始設定系統時就把三個科目補齊。

8. QA|卡關求助

Q:按「建立退款」跳出「找不到已過帳的客戶發票」?

A:硬性前置條件。先回銷售單開立並過帳發票,再回退貨單重試。

Q:找不到「建立換出」按鈕?

A:只在退貨單狀態=「完成」時出現;而「換貨數量」只能在「草稿」狀態編輯。正確順序:草稿填數量 → 標記完成 → 按鈕才出現。

Q:想把退貨的破損品跟良品分開放不同倉位?

A:不需要自己分流,系統會自動處理(見第 6 節)。請不要再建「內部調撥」。

Q:明細行的日期怎麼填都填不進去?

A:明細行的日期欄位只認日曆選取器點選;直接打字或按 Enter 可能失效,甚至意外新增一列空白明細。

Q:供應商/客戶欄位打字後出現兩筆一模一樣的名字?

A:請務必從既有下拉清單選取,並認明是公司而非個人的那一筆。已產生重複請通知管理員合併聯絡人。

Q:出貨怎麼沒有照效期最早的那批出?

A:到「庫存 → 設定 → 產品類別」確認該產品所屬類別的「移除策略」是否設為 FEFO(First Expiry First Out)

Q:批號會不會被自動改寫成某種格式?

A:不會。批號維持您手動輸入的原樣,效期也不會被自動鎖定。

附錄:UAT 可重現的示範單號(測試機已備妥)

退貨單母單示範什麼母單最終(訂購/已交貨)
RMA/2026/0008S00015沒開發票 → 退款被擋(卡關示範)3 / 1
RMA/2026/0009S00016退 1 件 → 已交貨回沖3 / 2
RMA/2026/0010S00017完整成功流程(發票→退貨→入庫→退款→完成)3 / 2(已開票 2)
RMA/2026/0011S00018A 換 A(換回同品)3 / 1
RMA/2026/0012S00019A 換 B(換不同品,含差額)3 / 1
RMA/2026/0016破損兩段式(回沖+自動報廢)原單交貨量 120→0
RMA/2026/0017部分退貨・貨況完好 → 回可售
RMA/2026/0018客戶端沖銷(客戶庫位報廢、倉庫不動)

要自己跑一次:S00020~S00028 共 9 張已出貨訂單沒被退過,挑一張 → 開啟它的交貨單 → 按「到貨退貨」→ 依上面步驟走一遍。

怎麼查

  • 退貨單:銷售 → 訂單 → 退貨 / 退款(搜尋 RMA 單號)
  • 母單數量變化:銷售 → 訂單 → 開啟母單 → 明細列的「已交貨/已開票」欄
  • 換出交貨單:退貨單上方的「換出」智慧按鈕,或庫存 → 交貨單搜尋單號
  • 貸方憑單:退貨單「貸方憑單」智慧鈕,或會計 → 客戶 → 貸方憑單(RINV 開頭)

*本文所述行為皆為 test-ambrosia 實機操作與 UAT 實測結果。線上完整版(含截圖)見課程18「庫存收發退換」章節。*

退貨/換貨/退款/清算四段整併成一頁的文字速查版,不含截圖。

本課程沒有啟用評論功能。