跳到主要內容
營運6 分鐘

🔢 串接電子發票卡在測試統編?一鍵產生檢核碼正確的假統編

統一編號產生器使用教學。一鍵產生一批檢核碼正確的測試統編,用來測電子發票串接(綠界、藍新、ezPay)、B2B 結帳表單、ERP 匯入;另附即時驗證器,貼上 8 碼就知道合不合法。純前端運算,不上傳、不耗 AI 額度,並說明 2023 新制檢核規則與測試資料的使用界線。

為什麼你會需要一組「假的但合法」的統編

場景大概都長這樣:發票串接寫到一半,要測「買方統編」欄位,你隨手打了 12345678,綠界測試環境直接回一個錯誤碼,說統編格式不正確。

於是你開始 Google 一家公司的統編來貼。這是很多人做過的事,但它有兩個麻煩:一是你把別人真實的稅籍號碼寫進測試資料、寫進 log、甚至 commit 進 repo;二是 QA 要跑 50 筆批次匯入時,你不可能去查 50 家公司。

統編不是隨便 8 碼數字都算數。財政部有一套加權檢核規則,格式對不上的號碼,發票 API、金流平台、稍微嚴謹一點的結帳表單都會直接擋掉。

所以你需要的東西很明確:一批「通過檢核碼演算法、但不對應任何真實登記資料」的號碼。概念跟信用卡測試卡號 4242 4242 4242 4242 完全一樣,開發時人人都用,只是統編這邊一直沒有一個順手的產生器。

常見會用到的時機:

  • 串接電子發票 API(綠界 ECPay、藍新 NewebPay、ezPay)測買方統編、賣方統編欄位
  • B2B 結帳流程要驗證「打錯統編會不會被擋下來」
  • ERP、進銷存、CRM、會員系統要一批匯入測資
  • QA 自動化測試需要每次都不重複的合法號碼

統編檢核碼是怎麼算的,以及 2023 新制改了什麼

統一編號是 8 碼,每一碼對應一組固定的加權係數:

[1, 2, 1, 2, 1, 2, 4, 1]

算法分三步:

1.每一位數字乘上對應係數

2.乘積如果大於等於 10,把十位數與個位數相加(例如 14 就變成 1 + 4 = 5)

3.八個結果全部加總

加總出來的數字,能被 5 整除就是合法格式。另外有個特例:第 7 碼是 7 的時候,加總或加總再加 1 能被 5 整除,都算合法。

這裡是最多人踩坑的地方。網路上一堆教學和舊的驗證函式寫的是「要被 10 整除」,那是舊制。2023 年(民國 112 年)財政部因為號碼快用完,把規則放寬成能被 5 整除,舊制其實是新制的子集。

實務上的後果是:如果你的系統還在用舊制驗證,2023 之後新發放的合法統編,會被你自己的表單誤判成無效,客人在結帳頁打了真統編卻一直被擋,你還以為是他打錯。

這個工具兩邊都照新制走。產生時保證產出的號碼通過新制檢核,驗證時也用新制判定,並且會告訴你判定的理由。

三十秒拿到一批測試統編

步驟 1:選數量,按下產生

打開工具,左邊是產生器。數量有 1、5、10、20、50 五個選項,依用途選:

  • 手動測一個發票欄位,選 1
  • 前端表單來回測幾輪,選 5 或 10
  • ERP 批次匯入、QA 跑迴歸,選 50

按「產生統編」之後就直接出清單,系統會自動去重,同一批裡不會出現重複號碼。要換一批就按「重新產生」。

步驟 2:複製,貼進你的測試環境

每一組右邊有單獨的複製鈕,要一次全拿就按上方的「複製全部」,號碼會以每行一組的格式進剪貼簿,貼進 CSV、Excel、測試腳本都不用再整理格式。

拿去測的時候建議從「最陽春的那一關」開始:先確認發票 API 收得下去、不回格式錯誤,再往上測 ERP 匯入與前端驗證。

步驟 3:用右邊的驗證器反向確認

右邊是驗證器,輸入框只吃數字、上限 8 碼,邊打邊驗,不用按送出。合法會顯示綠色的「合法統編格式」,不合法顯示紅色,下面都會附一句判定理由。

這格最常見的用法不是驗自己產生的號碼,而是驗別人給你的號碼:客人在後台留的統編、業務從 Excel 貼來的名單、或是你自己寫的驗證函式判定結果,拿來對照一下就知道是誰算錯。

幾個會讓你少踩坑的用法

1.先拿產生的號碼去打自己的表單:如果你的結帳表單把這些檢核碼正確的號碼擋掉了,那八成是驗證邏輯還停在舊制(被 10 整除)。這是最快找出舊制殘留的方法。

2.反過來測「該擋的有沒有擋掉」:把產生的號碼隨便改掉一碼,貼進驗證器確認變成不合法,再拿去打你的表單。表單如果照收,代表你根本沒做檢核,客人打錯統編會一路寫進發票。

3.測資固定存一份:QA 迴歸測試最好用固定的幾組號碼,而不是每次重產。產一次 20 組存成 fixture,之後每次跑測試都用同一批,出問題比較好回溯。

4.不要拿去對真實資料:這個工具只做數學檢核,不查商工登記。想知道某個統編是「哪一家公司」、有沒有真的存在、是不是停業狀態,那是另一件事,要走真實登記資料查詢。

5.測試資料要標記清楚:把測試統編寫進 DB 的時候,配合一個明顯的測試公司名稱(例如「測試股份有限公司」),避免哪天測試資料混進正式環境,還被拿去開發票。

三個實際情境

情境 A:串綠界電子發票,測試環境一直回格式錯誤

工程師拿 12345678 當買方統編打 B2B 開立 API,回應一直是參數錯誤。問題不在串接寫錯,是那組號碼根本過不了檢核。

用產生器出 5 組,換上去,API 立刻通。這種問題卡住半天很不值得,因為錯誤訊息通常只講「格式不正確」,不會告訴你是檢核碼的事。

情境 B:B2B 結帳頁的統編欄位驗證做得對不對

一個做辦公用品批發的電商,客人下單要開三聯式發票。工程師想確認前端驗證的兩件事:合法統編會不會被誤擋、亂打的會不會被放行。

作法是產 10 組貼進表單,全部應該順利通過;再把其中幾組改動一碼(先用右邊驗證器確認它已經變成不合法),貼進表單應該全部被擋下來。兩邊都符合預期,這個欄位才算測過。

情境 C:ERP 匯入 50 筆企業客戶測資

要驗證新的客戶匯入功能,欄位包含統編。過去的做法是複製同一組統編 50 次,結果反而測不出「重複統編」的判斷邏輯。

改用產生器選 50,一次拿到 50 組不重複且格式合法的號碼,複製全部貼進 CSV。這時候再刻意複製其中兩筆製造重複,就能順便測到系統會不會擋重複統編。

產生完之後,接下來做什麼

如果你手上是別人給的統編,想知道是哪家公司:這個產生器只做格式檢核,查不到公司名稱。改用統一編號驗證器,它支援單筆與批次檢查,合法的號碼可以直接接去查商工登記資料。

如果你是在測 B2B 結帳流程:欄位驗證只是最基本的一關。統編欄位放在哪一步、要不要預設展開、打錯時錯誤訊息怎麼寫,這些對轉換的影響比技術驗證還大。整個流程跑一次結帳流程診斷,把讓客人中途離開的摩擦點抓出來。

如果是 B2B 客戶的請款與收款環節:企業客戶常見的狀況是下單了但月結、付款拖,發票開了錢還沒到。未付款訂單催繳信可以生出既不失禮又能收到錢的催款信文案。

最後提醒一件事:這些號碼只保證格式正確,不代表任何真實存在的公司。請留在測試環境用,不要拿去開立不實發票或做任何逃漏稅用途。

常見問題

Q: 產生出來的統編是真的公司嗎?
不是。工具只保證號碼通過財政部的檢核碼演算法,號碼本身是隨機產生的,不查詢也不對應任何工商登記資料。理論上有可能剛好撞到某家真實公司的統編,但那是巧合,僅供測試環境使用,不要拿去開立發票或做任何正式用途。
Q: 會消耗 AI 額度或把我輸入的統編上傳嗎?
都不會。產生與驗證全部在你的瀏覽器本機用 JavaScript 運算,不呼叫 AI、不打伺服器、不上傳、不記錄。所以免費無限次使用,貼客戶的統編進去驗證也不會外流。
Q: 為什麼別的驗證器說要被 10 整除,這裡說被 5 整除?
2023 年(民國 112 年)財政部因為統編號碼即將用罄,把檢核規則從「加總可被 10 整除」放寬為「可被 5 整除」,舊制是新制的子集。用舊制驗證器會把 2023 之後新發放的合法統編誤判成無效,本工具的產生與驗證都以新制為準。
Q: 一次最多可以產生幾組,會不會重複?
單次可選 1、5、10、20、50 組,同一批內會自動去除重複。需要更多就按「重新產生」再拿一批,但不同批之間不保證不重複,要大量測資建議產完一次先存檔,重複的部分自己去掉。

立即免費使用電商營運工具箱

192 個 AI 驅動的電商工具,解決你每天最痛的營運問題

開始使用 →