🔄 驗收展示:退貨與換貨完整流程
本節每一步都是在測試機實際跑過的,數字可對照。看完你會知道:按鈕要按哪些、按什麼順序、原單數量怎麼變、什麼情況會卡住。文末附 demo 單號供重現。
核心設計:貨、金、票三層分開
貨=退貨入庫單(實體收回來)/金=貸方憑單(退錢)/票=發票作廢或折讓。三者各自獨立,缺一項不影響其他。
合約數量不改:原銷售單的「訂購數量」永遠保持原始值(合約憑證),變動反映在已交貨/已開票這些淨值欄位上。
貨=退貨入庫單(實體收回來)/金=貸方憑單(退錢)/票=發票作廢或折讓。三者各自獨立,缺一項不影響其他。
合約數量不改:原銷售單的「訂購數量」永遠保持原始值(合約憑證),變動反映在已交貨/已開票這些淨值欄位上。
第一步:兩種發起退貨的路徑
路徑一:從銷售訂單發起
銷售訂單 → 按「退貨 / 退款」鈕 → 開啟新增退貨單表單,自行挑要退的明細。
適合:客戶打電話說要退,還沒收到貨。
適合:客戶打電話說要退,還沒收到貨。
路徑二:從交貨單發起(到貨退貨)
已完成的交貨單 → 按「到貨退貨」鈕 → 系統自動建立退貨單並帶好明細(產品、可退量、單價、來源)。
適合:貨已送到,現場要退。最省事。
適合:貨已送到,現場要退。最省事。
✅ 要領:路徑二會自動帶入來源交貨單、來源出貨明細與可退數量,追溯鏈完整;本節示範都走路徑二。
第二步:⭐ 按鈕有順序(最關鍵)
⚠️ 直接按「標記完成」,狀態會變完成,但什麼都不會產生——不會有退貨入庫單、不會退錢、原單數量也不會變。這是最常見的誤操作。
①建立退貨單
貨收回來,原單已交貨量同步回沖
貨收回來,原單已交貨量同步回沖
→
②建立退款
退錢(需先有已過帳發票)
退錢(需先有已過帳發票)
→
③標記完成
結案;之後才會出現換貨鈕
結案;之後才會出現換貨鈕
→
④(需要才按)建立換出
補一張換出交貨單
補一張換出交貨單
第三步:完整成功流程實測(含退款)
示範單 S00017(已出貨 3 件)→ 退 1 件並退款。實機逐步結果:
| 步驟 | 動作 | 系統實際產生 |
|---|---|---|
| 前置 | 開立客戶發票並過帳 | INV/2026/00002 已過帳,1,008 元 |
| 1 | 交貨單按「到貨退貨」 | 退貨單 RMA/2026/0010,明細自動帶入(可退 3,改成退 1) |
| 2 | 建立退貨單 | 入庫單自動建立並完成;母單已交貨 3 → 2(回沖) |
| 3 | 建立退款 | 貸方憑單(客戶退款)336 元含稅 |
| 4 | 標記完成 | 狀態=完成;入庫單 1、貸方憑單 1 |
✅ 母單最終狀態:訂購 3(合約數量不變)/已交貨 2/已開票 2 — 退掉的那 1 件,從已交貨與已開票中扣除,訂購量保持原樣。
第四步:關鍵確認點(實測遇到的)
1. 要退款,必須先有「已過帳」的客戶發票。
實測示範單 RMA/2026/0008:母單還沒開發票就按「建立退款」,系統擋下並提示
怎麼補:回到銷售訂單 → 建立發票 → 過帳 → 再回退貨單按建立退款。
實測示範單 RMA/2026/0008:母單還沒開發票就按「建立退款」,系統擋下並提示
來源銷售訂單上找不到已過帳的客戶發票。怎麼補:回到銷售訂單 → 建立發票 → 過帳 → 再回退貨單按建立退款。
2. 「已交貨量回沖」發生在「建立退貨單」那一步,不是建單當下。
只建退貨單、還沒按建立入庫單時,母單數字不會動;按下去(貨收回來)才回沖。
只建退貨單、還沒按建立入庫單時,母單數字不會動;按下去(貨收回來)才回沖。
3. 換貨按鈕要「退貨單完成後」才出現。
狀態還在草稿時看不到「建立換出」「出B開票(差額)」,先把退貨流程走完再換。
狀態還在草稿時看不到「建立換出」「出B開票(差額)」,先把退貨流程走完再換。
第五步:換貨兩種做法(實測)
在退貨明細上有兩個欄位控制換貨:換貨數量(可少於退回量=部分換貨)、換出產品(留空=換同一產品;填不同產品=換別的品項)。
A 換 A:換回同一產品
示範單 S00018 → RMA/2026/0011:退香草莢 2 件(單價 320)→ 換出欄位留空、換貨數量 2。
系統產生:換出交貨單
系統產生:換出交貨單
WH/OUT/00047(待出貨,香草莢 × 2)+ 差額憑單 640 元未稅。
A 換 B:換不同品項(含差額結算)
示範單 S00019 → RMA/2026/0012:退松露醬 2 件(單價 650,計 1,300)→ 換出產品填「西班牙酸豆」、數量 2(單價 120,計 240)。
系統產生:換出交貨單
系統產生:換出交貨單
WH/OUT/00048(西班牙酸豆 × 2)+ 差額憑單 240 元未稅。
| 項目 | 金額 | 方向 |
|---|---|---|
| 退回松露醬 2 × 650 | 1,300 | 應退客戶 |
| 換出酸豆 2 × 120 | 240 | 應向客戶收 |
| 相抵後 | 淨退 1,060 | 退客戶 |
✅ 退回的金額走貸方憑單、換出的價值走「出B開票(差額)」,兩張憑單相抵就是實際差額——不用手算,也留下完整帳務軌跡。
🔁 自己重現:demo 單號(測試機已備妥)
| 退貨單 | 母單 | 示範什麼 | 母單最終(訂購/已交貨) |
|---|---|---|---|
| RMA/2026/0008 | S00015 | 沒開發票 → 退款被擋(卡關示範) | 3 / 1 |
| RMA/2026/0009 | S00016 | 退 1 件 → 已交貨回沖 | 3 / 2 |
| RMA/2026/0010 | S00017 | 完整成功流程(發票→退貨→入庫→退款→完成) | 3 / 2(已開票 2) |
| RMA/2026/0011 | S00018 | A 換 A(換回同品) | 3 / 1 |
| RMA/2026/0012 | S00019 | A 換 B(換不同品,含差額) | 3 / 1 |
✅ 要自己跑一次:還有 S00020~S00028 共 9 張已出貨訂單沒被退過,挑一張 → 開啟它的交貨單 → 按「到貨退貨」→ 依上面步驟走一遍。
如何查到
退貨單:銷售 → 訂單 → 退貨 / 退款(清單搜尋 RMA 單號)。
母單數量變化:銷售 → 訂單 → 開啟母單 → 明細列的已交貨/已開票欄。
換出交貨單:退貨單上方的換出智慧按鈕,或庫存 → 交貨單搜尋單號。