n8n 發票自動化|AI OCR 辨識 + Gmail 觸發 + Google Sheets 自動歸檔完整教學

更新於 2026年2月11日

n8n 發票自動化 - AI OCR 辨識與歸檔工作流

📥 工作流 JSON 下載GitHub 範例庫 | 💬 社群討論Skool 雲端方程式 Cloud F1

專業導讀:n8n 發票自動化完整教學

💡 本文重點: 用 n8n 打造發票整理自動化工作流——Gmail 收到發票自動觸發,AI OCR 辨識內容,自動提取金額、日期、廠商資訊,最後寫入 Google Sheets 歸檔。這是頻道第一集教學(EP01),也是最多人問的入門實戰案例。

你將學到

  • ✅ Gmail Trigger 設定:自動偵測帶有發票附件的信件
  • ✅ Google Drive 下載:自動將附件存到指定資料夾
  • ✅ ChatGPT AI OCR 辨識:GPT-4 Vision 解析發票圖片與 PDF
  • ✅ 結構化資料提取:金額、日期、統編、廠商名稱一次到位
  • ✅ Google Sheets 自動歸檔:建立可追蹤的發票資料庫
  • ✅ 成本控制:每月處理 100 張發票成本不到 $2 美元
  • ✅ 可擴展架構:後續可串接 Notion、Airtable 或企業 ERP

🎯 什麼是 n8n 發票自動化?

n8n 發票自動化是利用 n8n 工作流串接 Gmail、Google Drive、ChatGPT(GPT-4 Vision)和 Google Sheets,實現從收到發票到辨識歸檔全流程的零人工處理方案。 透過 AI OCR 技術辨識發票內容,準確率可達 95% 以上,每月可節省數小時的手動輸入時間。

你有沒有遇過這種情況?月底要報帳了,桌上堆了一疊發票,Email 信箱裡還有幾十封含附件的電子發票。你要一張一張打開、手動抄金額、填日期、對統編——光是 50 張發票就要花掉半天時間。更糟糕的是,手動輸入難免出錯,一個小數點打錯就要花更多時間回頭查。

這就是為什麼發票自動化是 n8n 自動化入門最好的起手式。它結合了實用性和技術含量:你既解決了真實的痛點問題,同時也學會了 n8n 最核心的幾個概念——觸發器、API 串接、AI 整合和資料寫入。

發票處理的三大痛點

痛點描述影響
手動輸入每張發票需 2-3 分鐘手動抄寫50 張 = 2.5 小時
人為錯誤金額、日期、統編容易打錯報帳退件、稅務問題
找不到發票紙本散落、電子郵件埋在信箱報帳時四處翻找

💡 Alex 的觀察:EP01 的起點,從一張發票開始

這集是我整個 YouTube 頻道的第一支影片(EP01),所以對我來說意義特別不一樣。

我的觀察是這樣的——很多人學自動化,一開始就想做很複雜的東西:串接 CRM、建 AI Agent、做多平台同步。但其實最好的入門方式是從一個你每天都會碰到的小問題開始。發票整理就是這樣一個問題:每個人都碰過,痛點很明確,而且自動化的效果立竿見影。

三個我從這個專案學到的事:

  1. AI OCR 比你想像的準確:GPT-4 Vision 辨識台灣電子發票的準確率大概在 92-97% 之間。清晰的電子發票 PDF 幾乎是 100%,只有模糊的手機照片才需要人工複核。這個準確率已經遠超人工手動輸入了。

  2. 小工作流也有大價值:這個工作流只有 4-5 個節點,但它每個月幫我省了大概 3 個小時。累積一年就是 36 小時,而且這 36 小時完全沒有人為錯誤。

  3. 從簡單開始建立信心:我後來觀察學員的學習路徑,那些從簡單工作流(像發票處理、郵件通知)開始的學員,後來做進階專案的成功率比直接挑戰複雜工作流的學員高出很多。

這個方法的缺點是:如果你的發票是手寫的、字跡潦草的紙本收據,AI OCR 的辨識率會下降到 70-80%。這種情況建議還是拍清楚一點再讓 AI 處理,或者直接用電子發票。另外,第一次設定 Gmail 和 Google Drive 的 OAuth 認證會需要一點耐心,但設好之後就不用再管了。

這邊要特別注意——這個工作流的核心價值不只是「自動化」,而是建立一個可追蹤、可搜尋的發票資料庫。以後你要查任何一筆發票,直接在 Google Sheets 裡搜尋就好,不用再翻箱倒櫃了。


💡 為什麼你需要發票自動化?

大家可以想想看,如果你是自由工作者、接案人員、或者小型企業主,每個月處理的發票可能有 30-100 張。就算每張只花 2 分鐘,一個月也要花 1-3 小時在這件事上。而且這還不包括找不到發票、重複輸入、金額打錯等等衍生問題。

用 n8n 發票自動化,你可以得到三個好處:

  1. 時間釋放:從每月 3 小時降到 5 分鐘(只需要檢查結果)。多出來的時間可以拿去做更有價值的事。

  2. 準確度提升:AI OCR 辨識不會累、不會打錯。就算偶爾有辨識錯誤,也比人工手動輸入的錯誤率低很多。根據我的經驗,自動化後的錯誤率從 5% 降到不到 1%。

  3. 可追蹤性:所有發票資料都在 Google Sheets 裡,可以按日期、金額、廠商搜尋。報帳時直接篩選匯出,不用再翻箱倒櫃。


🔧 Step-by-Step 教學:打造發票自動化工作流

前置準備

在開始之前,你需要準備以下東西:

  • n8n 環境:本機安裝或雲端部署(推薦 n8n 零基礎教學 的環境設定章節)
  • Google 帳號:需要 Gmail + Google Drive + Google Sheets 的 OAuth 認證
  • OpenAI API Key:用於 ChatGPT / GPT-4 Vision 辨識
  • 測試發票:準備 2-3 張電子發票 PDF 或照片

完整工作流架構

Gmail Trigger (收到發票)
  → Google Drive (下載附件)
    → ChatGPT / GPT-4 Vision (OCR 辨識)
      → Code Node (結構化提取)
        → Google Sheets (寫入歸檔)

Step 0:Gmail Trigger — 自動偵測發票信件

第一步是設定 Gmail Trigger,讓 n8n 自動偵測信箱裡含有發票附件的新信件。

節點設定:

  1. 在 n8n 畫布上新增一個 Gmail Trigger 節點
  2. 設定 Google OAuth 認證(第一次需要授權)
  3. 篩選條件設定:
    • Label/Filter:建議在 Gmail 先建一個「發票」標籤,用 Gmail 的 Filter 自動把含發票的信分類進去
    • Poll Times:設定每 5 分鐘檢查一次,或者用 has:attachment 條件
  4. 勾選「Download Attachments」選項
設定重點:
- Trigger 類型:Poll(輪詢)
- 篩選:含有 attachment + 標籤為「發票」
- 頻率:每 5 分鐘或每小時(依需求調整)

這邊要特別注意——Gmail Trigger 使用的是 Polling 機制,不是即時觸發。所以你設定每 5 分鐘檢查一次,最慢會有 5 分鐘的延遲。對發票處理來說,這個延遲完全可以接受。

Step 1:Google Drive — 下載附件到指定資料夾

收到發票信件後,下一步是把附件下載到 Google Drive 的指定資料夾。

節點設定:

  1. 新增 Google Drive 節點
  2. Operation 選擇 Upload
  3. 設定目標資料夾(例如:/發票/2025/03/
  4. 來源選擇上一個 Gmail Trigger 節點的 attachment binary data
Google Drive 設定:
- Operation: Upload
- Folder: /發票/{{$now.format('yyyy/MM')}}/
- File Name: {{$json.subject}}_{{$now.format('yyyyMMdd')}}.pdf
- Binary Property: attachment_0

小技巧:用 n8n 的 Expression 動態產生資料夾路徑,這樣每個月的發票會自動分到對應的資料夾。

Step 2:ChatGPT OCR — AI 辨識發票內容

這是整個工作流最關鍵的一步。我們用 ChatGPT 的 GPT-4 Vision 功能來辨識發票圖片或 PDF 的內容。

節點設定:

  1. 新增 OpenAI 節點(或 HTTP Request 呼叫 API)
  2. Model 選擇 gpt-4o(支援圖片辨識)
  3. 設定 System Prompt:
你是一個專業的發票辨識助手。請分析以下發票圖片,提取出以下資訊並以 JSON 格式回傳:

{
  "invoice_number": "發票號碼",
  "invoice_date": "開立日期 (YYYY-MM-DD)",
  "seller_name": "賣方名稱",
  "seller_tax_id": "賣方統一編號",
  "buyer_name": "買方名稱",
  "buyer_tax_id": "買方統一編號",
  "subtotal": 小計金額(數字),
  "tax": 稅額(數字),
  "total": 總計金額(數字),
  "items": [
    {"name": "品名", "quantity": 數量, "unit_price": 單價, "amount": 金額}
  ],
  "confidence": "high/medium/low"
}

如果某個欄位無法辨識,填入 null。
  1. 將 Google Drive 下載的檔案作為圖片傳入

這個 Prompt 的設計重點是要求 AI 回傳結構化的 JSON 格式。這樣後續的節點才能準確地提取每個欄位。我實測下來,GPT-4o 辨識台灣電子發票 PDF 的準確率非常高。

Step 3:Code Node — 結構化資料處理

AI 回傳的 JSON 需要做一些後處理,確保資料格式統一。

節點設定:

  1. 新增 Code 節點
  2. 解析 ChatGPT 回傳的 JSON 字串
  3. 做基本的資料驗證和清洗
// 解析 ChatGPT 回傳的 JSON
const response = $input.first().json.message.content;
const invoiceData = JSON.parse(response);

// 資料驗證
const cleaned = {
  invoice_number: invoiceData.invoice_number || '未辨識',
  invoice_date: invoiceData.invoice_date || new Date().toISOString().split('T')[0],
  seller_name: invoiceData.seller_name || '未辨識',
  seller_tax_id: invoiceData.seller_tax_id || '',
  total: Number(invoiceData.total) || 0,
  tax: Number(invoiceData.tax) || 0,
  confidence: invoiceData.confidence || 'low',
  processed_at: new Date().toISOString(),
  source_email: $('Gmail Trigger').first().json.subject
};

return [{ json: cleaned }];

Step 4:Google Sheets — 自動歸檔

最後一步,把處理好的資料寫入 Google Sheets。

節點設定:

  1. 新增 Google Sheets 節點
  2. Operation 選擇 Append Row
  3. 選擇目標試算表和工作表
  4. 欄位對應:
| Google Sheets 欄位 | 資料來源 |
|-------------------|---------|
| A 發票號碼 | invoice_number |
| B 日期 | invoice_date |
| C 廠商名稱 | seller_name |
| D 統編 | seller_tax_id |
| E 總金額 | total |
| F 稅額 | tax |
| G 辨識信心度 | confidence |
| H 處理時間 | processed_at |
| I 來源信件 | source_email |

完成!從這裡開始,每當有新的發票信件進來,n8n 就會自動執行整個流程:下載附件 → AI 辨識 → 歸檔到 Sheets。你需要做的只是偶爾檢查一下低信心度(confidence = low)的紀錄。

第一次沒做好或是聽不懂,代表你是正常人!建議先用 2-3 張測試發票跑跑看,確認結果正確再正式啟用。


📊 比較分析:n8n 發票自動化 vs 其他方案

在決定用什麼方案處理發票之前,大家可以想想看你的需求量和預算。以下是四種主流方案的比較:

比較項目n8n 自動化手動處理Dext (Receipt Bank)QuickBooks
月費免費(自架)$0$24/月起$30/月起
處理速度每張 10 秒每張 2-3 分鐘每張 15 秒每張 30 秒
每月 100 張成本電費 + API 約 $23-5 小時人力$24+$30+
準確度92-97%(GPT-4 Vision)95%(但容易疲勞下降)95%+90%+
客製化完全自訂(Prompt、欄位、流程)N/A有限有限
台灣發票支援支援(自訂 Prompt)手動處理有限有限
整合性串接任何 API有限整合會計生態系
學習門檻中等(需學 n8n 基礎)中等

我的建議:

  • 如果你的發票量少(每月 < 20 張)、預算有限:先用 n8n 自動化,免費又好用
  • 如果你需要專業會計功能(對帳、報表):考慮 QuickBooks + n8n 串接
  • 如果你是大企業、需要 SLA 保證:Dext 是比較穩的選擇
  • 不管用什麼方案,都不要再手動處理了——你的時間比你想像的值錢

✅ 重點整理

  1. n8n 發票自動化 = Gmail Trigger + Google Drive + ChatGPT OCR + Google Sheets,四個節點搞定全流程
  2. GPT-4 Vision OCR 辨識台灣電子發票準確率可達 92-97%,遠超手動輸入的效率
  3. Prompt 設計 是關鍵——要求 AI 回傳結構化 JSON 格式,後續處理才會順暢
  4. Google Sheets 歸檔 讓你建立可搜尋的發票資料庫,報帳時一鍵篩選匯出
  5. 從簡單開始:這個工作流只有 4-5 個節點,是學 n8n 自動化的最佳入門案例
  6. 成本幾乎為零:自架 n8n 免費,OpenAI API 每張發票約 $0.01-0.02 美元
  7. 可擴展性高:後續可以加上 Slack 通知、自動分類、異常發票警告等功能
  8. 時間投資回報:第一次設定需 1-2 小時,但每月可省 3+ 小時,長期非常划算

不用一次學完,慢慢來比較快。先把基本的四個節點跑起來,後續再慢慢加功能。


❓ 常見問題 FAQ

Q1: n8n 發票自動化支援哪些發票格式?

A: 支援所有常見格式。電子發票 PDF 的辨識率最高(95%+),因為文字是可選取的,AI 可以直接讀取。發票圖片(JPG、PNG)也支援,但建議拍攝時光線充足、正面拍攝。手寫收據可以嘗試,但辨識率會下降到 70-80%。台灣的統一發票、電子發票、收據、信用卡簽單都可以處理。

Q2: AI OCR 辨識率不高怎麼辦?有辦法提升嗎?

A: 辨識率取決於三個因素:圖片品質、Prompt 設計、和 AI 模型選擇。提升辨識率的方法:(1) 確保圖片清晰——解析度至少 300 DPI,避免反光和陰影;(2) 優化 Prompt——在 System Prompt 中加入台灣發票的格式範例,讓 AI 知道要找什麼;(3) 使用最新模型——GPT-4o 的視覺辨識能力明顯優於 GPT-4 Turbo。另外,可以在 Code Node 加入信心度判斷,低信心度的自動標記為「需人工複核」。

Q3: 可以串接到其他會計系統(不只 Google Sheets)嗎?

A: 當然可以。n8n 支援 400+ 應用程式整合,你可以把 Google Sheets 節點換成任何你使用的系統。常見整合包括:Airtable(更強的資料庫功能)、Notion(結合專案管理)、Excel Online(微軟生態系)、甚至直接透過 HTTP Request 串接你公司的 ERP 或會計系統 API。重點是 ChatGPT OCR 那一步輸出的結構化 JSON,可以餵給任何後端。

Q4: Gmail 以外的信箱也能用嗎?要怎麼改?

A: 可以。n8n 內建支援 IMAP 協議,所以理論上任何信箱都能用。如果你用 Outlook,可以用 Microsoft Outlook Trigger 節點直接取代 Gmail Trigger。如果是其他信箱(Yahoo、企業信箱),用 IMAP Email 節點設定 IMAP 伺服器資訊即可。其他步驟(Google Drive、ChatGPT、Sheets)都不需要改動。

Q5: 每月處理量很大(500+ 張),n8n 跑得動嗎?

A: 完全沒問題。n8n 自架版沒有執行次數限制。瓶頸通常在 OpenAI API 的速率限制(Rate Limit),GPT-4o 預設是每分鐘 500 次請求。如果你一次要處理 500 張發票,建議在工作流裡加一個 Wait 節點或 Split In Batches 節點,每批處理 10-20 張,避免觸發 API 限制。實際上大多數情況下,發票是陸續收到的(每天幾張),不會一次大量湧入,所以不太需要擔心。

Q6: 這個工作流的維護成本高嗎?

A: 非常低。設定好之後基本上就是自動跑,不需要日常維護。你需要注意的只有三件事:(1) Google OAuth Token 到期要重新授權(大約每 6 個月一次);(2) OpenAI API 餘額不要用完;(3) 偶爾檢查低信心度的辨識結果。整體來說,每月花 10 分鐘檢查就夠了。

Q7: 如何處理多幣別發票(外幣發票)?

A: 在 Prompt 裡加上幣別辨識指令,讓 AI 同時提取幣別欄位(如 TWD、USD、JPY)。然後在 Code Node 用匯率 API(如 ExchangeRate-API 或台灣銀行牯率)自動轉換成新台幣。Google Sheets 可以設兩欄:「原始金額 + 幣別」和「新台幣金額」,方便後續報帳和統計。

Q8: 如果發票有多頁怎麼辦?

A: GPT-4o 支援多頁 PDF,會自動讀取所有頁面。但要注意 API 的 token 限制。如果發票超過 10 頁(例如採購明細很多),建議在 Prompt 裡加上「只提取總金額、日期、廠商資訊,品項明細不需要逐一列出」,減少 token 消耗和成本。


🎯 下一步行動

🎓 想更有系統地學會這些技巧?AI 職場工作術(雲端方程式 Cloud F1 旗艦課程) 看看完整的實作路徑。

如果你看到這裡,應該已經對 n8n 發票自動化有完整的概念了。接下來我建議你按照這個順序行動:

  1. 先把環境架好:如果還沒安裝 n8n,先看 n8n 零基礎教學 的環境設定
  2. 設定 Google OAuth:參考 n8n Google Sheets 整合教學 一次搞定授權
  3. 跟著本文 Step-by-Step 做一遍:用 2-3 張測試發票驗證流程
  4. 觀看原始影片YouTube EP01 完整示範 有更詳細的操作畫面
  5. 下載工作流範本GitHub 專案 有完整的 n8n workflow JSON

想跟更多人一起學 n8n 自動化?

  • 💬 加入學習社群:Skool 雲端方程式 Cloud F1(免費加入,和 500+ 學員一起學)
  • 📧 訂閱電子報:獲取最新 AI 自動化技巧與工作流範本

每個高手都是從新手開始的。這個發票自動化工作流就是你的第一步,希望這篇對你有幫助!


🔗 相關資源

內部延伸閱讀

外部資源


本文改編自 YouTube EP01 教學影片與 n8n 課程模組,由 Alex Hsieh 撰寫。最後更新:2026-02-11

想把這篇學到的用進日常工作?

「AI 職場工作術」課程把這類實戰經驗整理成一步步的教學,帶你系統化練出跟 AI 協作的產能。

看 AI 職場工作術課程 →

本文作者:Alex Hsieh,SRE / DevOps 背景出身,現為企業 AI 導入顧問,也是「AI 相談室」課程講師。專注把 AI 自動化真正落地到企業日常流程,而不是停留在 Demo。

目錄
  1. 專業導讀:n8n 發票自動化完整教學
  2. 你將學到
  3. 🎯 什麼是 n8n 發票自動化?
  4. 發票處理的三大痛點
  5. 💡 Alex 的觀察:EP01 的起點,從一張發票開始
  6. 💡 為什麼你需要發票自動化?
  7. 🔧 Step-by-Step 教學:打造發票自動化工作流
  8. 前置準備
  9. 完整工作流架構
  10. Step 0:Gmail Trigger — 自動偵測發票信件
  11. Step 1:Google Drive — 下載附件到指定資料夾
  12. Step 2:ChatGPT OCR — AI 辨識發票內容
  13. Step 3:Code Node — 結構化資料處理
  14. Step 4:Google Sheets — 自動歸檔
  15. 📊 比較分析:n8n 發票自動化 vs 其他方案
  16. ✅ 重點整理
  17. ❓ 常見問題 FAQ
  18. Q1: n8n 發票自動化支援哪些發票格式?
  19. Q2: AI OCR 辨識率不高怎麼辦?有辦法提升嗎?
  20. Q3: 可以串接到其他會計系統(不只 Google Sheets)嗎?
  21. Q4: Gmail 以外的信箱也能用嗎?要怎麼改?
  22. Q5: 每月處理量很大(500+ 張),n8n 跑得動嗎?
  23. Q6: 這個工作流的維護成本高嗎?
  24. Q7: 如何處理多幣別發票(外幣發票)?
  25. Q8: 如果發票有多頁怎麼辦?
  26. 🎯 下一步行動
  27. 🔗 相關資源
  28. 內部延伸閱讀
  29. 外部資源