駿伸操作手冊
已完成
第 9 章 電子發票(開立・作廢・折讓・申報)
這一章只講一件事:哪幾段系統會自己跑完,哪幾段要人親自到別的網站
把資料搬回來。
電子發票牽涉三個不同單位的系統——我們的 Odoo、加值中心關貿 TradeVAN、
財政部電子發票整合服務平台。其中 Odoo 和關貿之間是自動的(程式直接互相呼叫,
不需要人動手);Odoo 和財政部平台之間沒有介接,有三個地方要人工把資料
從一邊帶到另一邊。把這三個地方認出來,這一章就讀完了。
🖐 先記住這三個人工斷點(全章其餘內容都是圍繞它們展開)
① 拿字軌:每個期別要先到財政部平台取號,再人工抄回 Odoo。
② 401 營業稅申報:系統算得出彙總數字,但不會產出申報媒體檔, 要人工上財政部平台登打。
③ B2B 作廢折讓證明單:依 MIG 規定賣方傳不了,必須由買方 自己登入平台上傳。
① 拿字軌:每個期別要先到財政部平台取號,再人工抄回 Odoo。
② 401 營業稅申報:系統算得出彙總數字,但不會產出申報媒體檔, 要人工上財政部平台登打。
③ B2B 作廢折讓證明單:依 MIG 規定賣方傳不了,必須由買方 自己登入平台上傳。
ℹ️ 這一章沒有大圖,但有完整的流程
完整的角色泳道 BPMN 圖放在
完整的角色泳道 BPMN 圖放在
dobtor_bpmn 流程設計圖庫
(檔名「電子發票_全流程」),適合在螢幕上放大看全局。
手冊裡改用步驟卡重新表達同一條流程——卡片在手機、平板、列印成 PDF
都能自動換行看得清楚,而一張 6800 像素寬的流程圖壓進手冊版面會看不清字。
兩邊內容出自同一份來源,不會對不上。9-1 四個角色各負責什麼
流程從頭到尾會經過四個角色。看單據時先問「現在球在誰手上」,就知道該等系統、 還是該有人去動手。
| 角色 | 是自動還是人工 | 負責哪些事 |
|---|---|---|
| 駿伸 業務/財會 | 人工 (在 Odoo 裡) |
開立銷售發票並過帳、按「手動開立」、把外面拿回來的字軌與申報結果登錄進 Odoo。 |
| Odoo 系統 | 自動 | 建立統一發票記錄、取號、推進狀態、撞號時自動換號重試、彙總期別數字。 |
| 關貿 TradeVAN (加值中心) |
自動 (API) |
代我們把發票送進財政部平台。Odoo 直接以程式呼叫它,不需要人工上傳檔案。 |
| 財政部平台 (電子發票整合服務平台) | ⚠ 人工 | 字軌申請取號、401 營業稅申報。和 Odoo 之間沒有介接,都要人親自上平台。 |
| 買方(客戶) | ⚠ 人工 | B2B 的作廢折讓證明單,依規定只能由買方自己登入財政部平台上傳。 |
✅ 一句話分辨:關貿那一段是自動的(有 API)、
財政部那一段是人工的(沒有 API)。會讓你多做事的一律在財政部那一段。
9-2 前置作業(每個期別做一次):把字軌拿回來
發票號碼不是系統自己生的,是財政部按期別(雙月一期)核配給我們的一段號碼區間, 叫做「字軌」。沒有字軌,B2B 發票就開不出來。這一段從頭到尾沒有任何介接, 是人工斷點 ①。
新期別開始雙月一期,如 1–2 月為第 1 期
→
⚠ 申請字軌核可持工商憑證向管區國稅局申請
→
⚠ 平台配號登入財政部平台,取得號碼區間
→
⚠ 抄回 Odoo 建字軌人工輸入字首、起訖號、期別
→
啟用字軌Odoo 自動:狀態轉「使用中」
- 1新期別開始:字軌按期別核配,跨期不能用,所以每期都要重做一次。
- 2申請字軌核可:到管區國稅局(不是財政部平台)辦理,需要工商憑證。
- 3平台配號:核可之後,到財政部電子發票整合服務平台登入取號,拿到的是一段號碼區間,例如字首兩碼+起號到迄號。
- 4抄回 Odoo:這一格是關鍵。平台不會把號碼送進 Odoo,要人工到 Odoo 建立一筆「統一發票字軌」記錄。
- 5啟用字軌:按下啟用後,Odoo 會把「目前號碼」設成起始號,之後每開一張 B2B 發票就往下推一號。
⚠️ 建字軌時的關鍵確認點
字首必須是 2 碼大寫英文字母、起訖號必須是 8 碼數字,格式不符會當場擋下來。
期別一定要填(民國年 + 第幾期)。填了之後,開立時系統會先確認 「發票日期有沒有落在這個字軌的期別裡」,不在就先擋住, 免得送出去才被平台退件。期別留空的舊字軌視為不限制。
字首必須是 2 碼大寫英文字母、起訖號必須是 8 碼數字,格式不符會當場擋下來。
期別一定要填(民國年 + 第幾期)。填了之後,開立時系統會先確認 「發票日期有沒有落在這個字軌的期別裡」,不在就先擋住, 免得送出去才被平台退件。期別留空的舊字軌視為不限制。
9-3 開立:這一段系統自己跑完
過帳之後,Odoo 會自己把發票開出去,中間不需要有人盯著。 要注意的只有兩個岔路:什麼時候開、以及B2B 和 B2C 取號方式相反。
過帳開立銷售發票並過帳
→
決定開立時機過帳即開/付清才開/人工按按鈕
→
建立發票記錄狀態=草稿
→
取號B2B 用自己的字軌/B2C 等平台配號
→
送到關貿程式自動呼叫,不用人工上傳
→
已開立回寫號碼、隨機碼、QR Code
- 1過帳:一切從銷售發票過帳開始。
- 2開立時機有三種,先看客戶身上的設定,客戶沒設才用公司的預設值:過帳即開(過帳當下就開)、付清才開(等收款核銷完成才開)、人工(等你按「手動開立」按鈕)。
- 3建立發票記錄:Odoo 會另外建一筆「統一發票」記錄,並把品項當下定格存起來,之後再改會計憑證也不會動到已開的發票內容。
- 4取號是 B2B 和 B2C 最大的差別:B2B(有統編)用我們自己字軌的下一號,號碼在送出前就決定了;B2C(個人)不取號,由關貿平台配號,號碼是開立成功後才回寫進來的。
- 5送到關貿:這一格是自動的。B2B 走「代傳」、B2C 走「代開」,兩種送出格式不同,但都由系統處理。
- 6已開立:成功後號碼、隨機碼、檢查碼、左右 QR Code 都會回寫到發票記錄上。
ℹ️ 為什麼 B2B 要自己帶號、B2C 不用?
因為兩者走的是平台上兩種不同的作業:B2B 是代傳(我們自己開好、關貿只負責轉送, 所以號碼得由我們帶),B2C 是代開(委託關貿代開,號碼由平台配)。 這也是為什麼只有 B2B 需要字軌——B2C 不會用到字軌上的號碼。
因為兩者走的是平台上兩種不同的作業:B2B 是代傳(我們自己開好、關貿只負責轉送, 所以號碼得由我們帶),B2C 是代開(委託關貿代開,號碼由平台配)。 這也是為什麼只有 B2B 需要字軌——B2C 不會用到字軌上的號碼。
9-4 開立沒成功的時候:先讓系統試,再由人判斷
送出去不一定每次都成功。系統對一種狀況會自己處理,其餘交給人。
平台回應看關貿回什麼
→
自訂編號重複系統自動換一個編號重送,最多 5 次
→
其他退件或連線失敗狀態改為「開立失敗」
→
人工判斷三顆按鈕擇一
→
已開立處理完成後回到正常狀態
- 1平台回應:成功就直接進「已開立」,這一段不用看。
- 2自訂編號重複:這是唯一系統會自己換號重試的狀況,最多換 5 次。你通常不會察覺,因為它自己就解決了。
- 3其他退件或連線失敗:發票記錄的狀態會變成開立失敗,失敗原因會寫在記錄上。
- 4人工判斷:表單上有三顆按鈕——重新開立(原因排除後再送一次)、同步狀態(向關貿問這張到底開出去了沒)、以新編號重開(確認平台上那張不是我們這單時才用)。
- 5已開立:三顆按鈕任何一顆處理成功,發票就回到正常狀態。
✅ 送出後沒收到回應時的要領:先「同步狀態」,不要直接重開
連線逾時的意思是「這次沒收到回覆」,不等於「平台上沒有這張發票」—— 請求很可能已經送到、發票已經開出去了,只是回應在路上斷了。
這時先按同步狀態向關貿確認下落。系統還會比對金額: 如果平台上那張的金額和本單不符,代表那不是本單開的,系統會中止同步並告訴你, 避免把別張發票認領進來。確認過再決定要不要重開,就不會開出兩張。
連線逾時的意思是「這次沒收到回覆」,不等於「平台上沒有這張發票」—— 請求很可能已經送到、發票已經開出去了,只是回應在路上斷了。
這時先按同步狀態向關貿確認下落。系統還會比對金額: 如果平台上那張的金額和本單不符,代表那不是本單開的,系統會中止同步並告訴你, 避免把別張發票認領進來。確認過再決定要不要重開,就不會開出兩張。
9-5 後續異動:作廢與折讓
發票開出去之後要更正,走哪一條由時間決定:還在當期就作廢重開, 已經跨期就只能開折讓單。
發票已開立要更正
→
還在當期?是 → 作廢;否 → 折讓
→
作廢/折讓送出系統自動呼叫關貿
→
完成作廢=已作廢;折讓=已確認
- 1發票已開立:只有「已開立」狀態的發票才談得上作廢或折讓。
- 2還在當期?目前的判斷是發票日期與今天同年同月。(若日後加裝營業稅申報模組,並且該發票已歸到某個申報期別,判斷會改成「該期別仍開放,且今天落在期別區間內」。)
- 3作廢/折讓送出:這兩個動作對關貿都是自動的,不用人工搬檔。B2B 和 B2C 送出的格式不同,但由系統自己分流。
- 4完成:作廢後發票狀態變「已作廢」;折讓單確認後,原發票的「剩餘可折讓金額」會自動扣掉。
ℹ️ 折讓可以只折一部分
一般折讓(用貸方憑單)建立出來的是一張可以編輯的草稿, 你可以在過帳前先把金額或品項改成實際要折的部分, 系統是依過帳當下的內容送出折讓的。想做部分折讓就在這裡調整。
另外,折讓單作廢之後,原發票的剩餘可折讓金額會自動加回來。
一般折讓(用貸方憑單)建立出來的是一張可以編輯的草稿, 你可以在過帳前先把金額或品項改成實際要折的部分, 系統是依過帳當下的內容送出折讓的。想做部分折讓就在這裡調整。
另外,折讓單作廢之後,原發票的剩餘可折讓金額會自動加回來。
9-6 人工斷點 ③:B2B 的作廢折讓,要請買方上傳
折讓單本身作廢,B2C 和 B2B 走的路完全不同,這是唯一需要客戶配合的一段。
折讓單要作廢先看是 B2B 還是 B2C
→
B2C:系統線上作廢自動呼叫關貿,做完就好
→
⚠ B2B:請買方上傳賣方傳不了,買方自行登入財政部平台
→
⚠ 買方回覆完成用電話或 Email 通知我們
→
Odoo 標記作廢人工在 Odoo 把折讓單標記為已作廢
- 1折讓單要作廢:入口是折讓單上的作廢動作。
- 2B2C:系統直接線上作廢,你按完就結束,沒有後續。
- 3B2B:依財政部 MIG 規定,B2B 的作廢折讓證明單只能由買方提出,賣方(我們)傳不了。要請買方自己申請平台帳號、登入上傳。這不是系統少做了什麼,是法規就這樣設計的。
- 4買方回覆完成:平台不會通知我們,要靠買方回報。建議在請買方上傳時就約定好回覆方式。
- 5Odoo 標記作廢:收到買方回覆後,人工到 Odoo 把該張折讓單標記為已作廢,帳上的剩餘可折讓金額才會正確。
9-7 人工斷點 ②:401 營業稅申報
系統會幫你把一期之內的發票歸期並算出彙總數字,但不會產出申報媒體檔。 申報動作本身要人工到財政部平台完成。
發票歸期系統把當期已開立發票歸入期別
→
期別彙總系統算銷項/進項、可扣抵與不可扣抵
→
⚠ 上平台申報人工登入財政部平台登打
→
⚠ 回 Odoo 標記已申報人工把期別狀態改為已申報
→
期別結案這一期完成
- 1發票歸期:依發票日期,把還沒歸期、狀態為「已開立」的發票歸進這一期。
- 2期別彙總:算出銷項應稅/零稅率/免稅銷售額與稅額,以及進項的可扣抵與不可扣抵稅額。這些數字可以直接拿去對。
- 3上平台申報:這一格是關鍵。系統沒有媒體檔輸出功能,要把上一格算出來的數字,人工帶到財政部平台上登打完成申報。
- 4回 Odoo 標記已申報:平台申報完不會回頭通知 Odoo,要人工把該期別的狀態改成「已申報」,帳上才看得出這期已經處理完。
- 5期別結案:狀態進到已申報,這一期就結束了。
⚠️ 這一段要先確認的事
營業稅申報期別功能由另一個模組提供。若你的系統選單裡找不到「申報期別」, 代表該模組尚未安裝,此時歸期與彙總也不會有——整個 401 申報都會是純人工作業。 需要用到時請先向我們確認安裝狀態。
營業稅申報期別功能由另一個模組提供。若你的系統選單裡找不到「申報期別」, 代表該模組尚未安裝,此時歸期與彙總也不會有——整個 401 申報都會是純人工作業。 需要用到時請先向我們確認安裝狀態。
9-8 三個人工斷點速查:去哪裡、做什麼、拿回什麼、貼到哪裡
這張表是本章最需要記住的一頁。遇到「怎麼系統沒幫我做」的時候先翻這裡。
| 人工斷點 | 去哪個網站/單位 | 在那裡做什麼 | 拿回什麼 | 回 Odoo 貼到哪裡 |
|---|---|---|---|---|
| ① 拿字軌 每期一次 |
先:管區國稅局(臨櫃/線上,需工商憑證) 後:財政部電子發票整合服務平台 |
先申請字軌核可,核可後登入平台配號,取得一段發票號碼區間。 | 字軌字首(2 碼英文) 起始號碼(8 碼數字) 結束號碼(8 碼數字) 所屬期別(民國年+第幾期) |
Odoo →「統一發票字軌」新增一筆,填入四項後按啟用。 沒建進來,B2B 發票就開不出去。 |
| ② 401 申報 每期一次 |
財政部電子發票整合服務平台 (營業稅申報作業) |
把 Odoo 算好的期別彙總數字人工登打完成申報。 系統沒有媒體檔可以匯出上傳。 | 申報完成的結果(受理編號/申報日期,依平台畫面為準) | Odoo →「申報期別」該筆記錄,把狀態改為已申報。 狀態不改,帳上看不出這期已處理完。 |
| ③ B2B 作廢折讓 視情況 |
財政部電子發票整合服務平台 (由買方登入,不是我們) |
請買方自行申請平台帳號並登入,上傳作廢折讓證明單。 依 MIG 規定賣方沒有這個權限。 | 買方的完成回覆(電話或 Email,平台不會通知我們) | Odoo → 該張折讓單,執行作廢。 不標記,剩餘可折讓金額會算錯。 |
9-9 自動的那一段:Odoo 和關貿之間在傳什麼
這一段不需要你動手,列出來是為了讓你知道「系統確實有幫你做這些」, 以及遇到平台退件時能對得上是哪一個作業。
| 做的事 | B2B(有統編) | B2C(個人) | 說明 |
|---|---|---|---|
| 開立 | 代傳 | 代開 | B2B 我們自己帶號;B2C 由平台配號。 |
| 作廢 | ✓ 自動 | ✓ 自動 | 當期才可作廢,兩種類別送出格式不同,由系統分流。 |
| 折讓 | 賣方自傳 | 平台代開 | B2B 折讓單號由我方自帶;B2C 由平台配號。 |
| 作廢折讓 | ⚠ 買方上傳 | ✓ 自動 | 唯一一個 B2B 走不通的作業,就是人工斷點 ③。 |
| 查詢 | ✓ 自動 | ✓ 自動 | 「同步狀態」按鈕用的就是它,向平台問一張發票現在的下落。 |
✅ 重點:這五件事全部走 API 自動傳輸,
沒有任何一項需要人工上傳或下載檔案。要人工搬資料的只有 9-8 那三格。
9-10 狀態速查
看不懂畫面上那個狀態代表什麼、下一步該做什麼,對著這幾張表看。
| 統一發票狀態 | 代表什麼 | 接下來可以做什麼 |
|---|---|---|
| 草稿 | 記錄已經建立,但還沒真的開出去。 | 填好發票號碼後按手動開立;或等系統自動送出。 |
| 已開立 | 發票已經生效。 | 當期可作廢;跨期改開折讓。此時會計憑證不能退回草稿。 |
| 已作廢 | 這張已經作廢。 | 需要的話重新開立一張新的。 |
| 開立失敗 | 送出去被退件,或連線沒成功。 | 三顆按鈕擇一:重新開立/同步狀態/以新編號重開。 |
| 已取消 | 這筆記錄不再使用。 | 不需處理。 |
| 折讓單狀態 | 代表什麼 | 接下來可以做什麼 |
|---|---|---|
| 草稿 | 折讓還沒送出。 | 把貸方憑單過帳即送出。 |
| 已確認 | 折讓已生效,原發票剩餘可折讓金額已扣除。 | 要撤銷就作廢——B2C 系統做、B2B 請買方上傳(人工斷點 ③)。 |
| 已作廢 | 折讓已撤銷。 | 原發票剩餘可折讓金額已自動加回。 |
| 失敗 | 送出沒成功。 | 排除原因後重新處理。 |
| 字軌狀態 | 代表什麼 | 接下來可以做什麼 |
|---|---|---|
| 草稿 | 剛建好,還不能拿來取號。 | 按啟用。 |
| 使用中 | 正在用,每開一張 B2B 發票推進一號。 | 留意剩餘張數,快用完要提早申請下一段。 |
| 已用完 | 號碼用到底了。 | 回到 9-2 重新申請一段新字軌。 |
| 已取消 | 這段字軌不再使用。 | 不需處理。 |
9-11 關鍵確認點整理
⚠️ 開立前最常需要確認的四件事
一、字軌是不是當期的:發票日期必須落在字軌的期別裡,否則系統會先擋下來。
二、B2B 一定要有買方統編:沒有統編就不是 B2B。
三、有統編的發票不能捐贈:這是全國通用規定,系統會擋。
四、折扣後的總額不可以是負數:折扣不能超過商品總額,否則開不出去。
一、字軌是不是當期的:發票日期必須落在字軌的期別裡,否則系統會先擋下來。
二、B2B 一定要有買方統編:沒有統編就不是 B2B。
三、有統編的發票不能捐贈:這是全國通用規定,系統會擋。
四、折扣後的總額不可以是負數:折扣不能超過商品總額,否則開不出去。
ℹ️ 想看完整的流程全圖
到
到
dobtor_bpmn「流程設計圖庫」找電子發票_全流程,
可以放大看四個角色的完整泳道圖。圖上的紅框方格就是這一章講的三個人工斷點,
其餘方格都是系統自動完成的。