公文交換檔產生器 作品集封面

民間公司要跟政府電子交換公文,di 檔和 sw 檔怎麼產生?

恆遠數位編輯團隊7 分鐘閱讀
複製引文

恆遠自己就是要跟政府機關往來的民間公司。去年我們申請了商工電子公文交換,拿到機關代碼、裝好 WebjAgent,以為接下來就能發文了,結果卡在一個沒人講清楚的地方:公文本體要自己生。

WebjAgent 只負責把檔案送出去和收進來,它不會幫你做公文。你得自己產出一個副檔名 .di 的公文本文檔、一個 .sw 的交換表單檔,格式還要符合檔案管理局的 104DTD。這篇把我們實際做出來的過程、官方免費工具能做到哪裡、以及最容易被退件的幾個地方寫下來。

先講結論:WebjAgent 只收發,公文本體要自己生

要跟政府電子交換公文,你需要三樣東西:交換會員資格、工商憑證卡、以及一套能產出合規 di 與 sw 檔的方法。前兩樣申請就有,第三樣沒有人會直接給你。

你要決定的事

選項

白話說明

公文本體怎麼來

買整套公文管理系統 / 用官方免費工具 / 自己產

一年發幾封文的公司,買整套太重

官方免費工具

離線版製作模組、筆硯線上平台

都能用,但安裝與上手成本高,離線版地址簿已停更

最常見的退件原因

編碼錯、機關代碼錯、元素順序錯

編碼用 Big5 會直接噴 0201 錯誤

怎麼確認發成功

看受文者清單的「使用者確認時間」

發文夾顯示「傳送中」是正常的,不代表失敗

全國可以做公文電子交換的非公務機關大約有一萬五千家,包含私人企業、學校、醫院與財團法人,2021 年全國電子公文收發量約 1.46 億封(叡揚資訊的整理)。這個數字代表你不是少數,卡住的人很多,只是沒人把過程寫出來。

di 檔和 sw 檔到底裝了什麼

一句話分工:di 裝公文內容,sw 裝要寄給誰。

副檔名

全名

裝什麼

.di

Document Instance,文書本文檔

公文本體,用 XML 寫的發文機關、受文者、主旨、說明、正副本、署名

.sw

Switch,交換表單檔

收文機關清單,一份 sw 列出全部受文者與正副本設定

.dm

文書訊息檔

文書訊息表單,一般發文用不到

di 是有欄位語意的 XML,收文機關拿它自己渲染成帶電子公文交換章的 PDF。所以不能反過來拿一份 PDF 去反推 di,方向是錯的,而且必然失真。

⚠️一份 di 對一份 sw,不要分址分文

紙本時代多個受文者要分址分文,電子交換不是這樣。104DTD 的交換表單設計就是一份 sw 列出全部機關,di 用未解析實體參照它。把多個機關拆成多份 di 是常見的誤解。

依政府文書格式排版的 A4 公文成品
依政府文書格式排版的 A4 公文成品

不花錢的兩條路:官方免費工具能做到哪

官方確實有免費工具,而且做得到電子交換,先講清楚免得你多花錢。

工具

怎麼取得

現況

離線版跨平台公文製作模組

經濟部商工電子公文交換服務下載區

113 年 6 月 1 日起停止諮詢與地址簿更新

文書編輯共通服務平臺(筆硯公文製作)

用「我的E政府」帳號登入

仍在維護,一般國民都可以申請帳號

筆硯平台的常見問題裡寫得很明白:「凡是中華民國的國民都可以申請成為我的E政府會員」(平台 FAQ)。所以民間公司不是被排除在外,門檻在別的地方。

官方工具的天花板在哪裡

成本不在授權費,在你要花多久才能發出第一封文。

筆硯的官方系統操作手冊共 104 頁,其中「安裝」章節就佔了 20 頁,做出第一份公文要再讀 28 頁。手冊裡多處提到 IE 瀏覽器、要把平台加入信任的網站、進入網站會自動安裝元件,這是 IE 時代的瀏覽器元件架構。

我們的判斷是這樣:對每天發幾十封文的機關來說,這些成本攤提得掉,官方工具是對的選擇。但對一年只發幾封文的民間公司,為了幾封公文去裝元件、讀百頁手冊,多數人算一算就退回紙本了。離線版模組地址簿停更這件事更關鍵,機關代碼會過期,而代碼錯就是退件。

ℹ️這不是在說官方工具不好

它免費、官方、功能完整,機關用它是合理的。問題出在使用情境:偶爾發文的民間公司,被迫承擔為高頻使用者設計的安裝與學習成本。

104DTD 最容易被退件的四個地方

先給答案:編碼、元素順序、實體綁定、機關代碼。四個裡面編碼最容易中,而且錯了會直接噴錯誤碼。

退件原因

症狀

怎麼避開

編碼用了 Big5

上傳 di 時出現「0201-發文執行時發生錯誤」

一律 UTF-8。網路上流傳的 DTD 很多是已被刪除的 Big5 舊版

元素順序錯

檔案不合 DTD

函的順序是發文機關、函類別、地址、聯絡方式、受文者、發文日期、發文字號、速別、密等、附件、主旨、段落、正本、副本、署名

sw 與附件沒綁好

收文端找不到附件

sw 與附件都要用未解析實體宣告在 di 的 DOCTYPE 內部子集

機關代碼錯或已停用

必退

查地址簿,只用狀態為啟用的機關

編碼這件事有官方答案。經濟部商工電子公文交換服務的常見問題裡,0201 錯誤的解答是「上傳的公文本文檔(di 檔)格式為 Big5 編碼,新系統不支援,新系統僅支援 Unicode 編碼」(官方 FAQ)。抓錯 DTD 版本會讓整個實作白做,這是我們踩過最貴的一個坑。

官方的 DTD 與實作範例其實是公開的,只是入口很少人知道:檔案管理局的公文及檔案管理資訊系統驗證網下載專區,「文書及檔案管理電腦化作業規範之實作範例」那包裡有完整的 104DTD 與十二組真實範例檔。動手寫任何程式碼之前先去拿這包,不要用猜的。

產出的 di 檔原始碼與實體綁定
產出的 di 檔原始碼與實體綁定

機關代碼查錯必退,但地址簿只認全名

地址簿是唯一權威來源,而且每日更新,發文前一定要查。

公文電子交換系統地址簿是政府開放資料,免費下載,收錄四萬多個機關。我們實際跑過一次分布:狀態為啟用的有 39,722 個,停用與刪除的合計不到 300 個。民間公司的代碼是 EB 開頭加八碼。

實務上最常卡住的是名稱。地址簿存的是官方全名「高雄市鳳山區忠孝國民小學」,承辦人記得的是「鳳山忠孝國小」。直接用簡稱去查會查不到,很容易誤判成該校不能電子收文,實際上它在地址簿裡而且是啟用狀態。查不到的時候先換全名再試一次。

檔案送出前怎麼自己驗

用 xmllint 對官方 DTD 做驗證,macOS 與多數 Linux 內建,不用另外裝。

Bash
# 把官方 DTD 與待驗檔案放同一個資料夾
xmllint --valid --noout 你的檔案.di

回傳 exit code 0 就是結構合法。我們拿官方的十二組範例檔實測過,28 個 di 檔有 27 個通過。

⚠️DTD 通過只是必要條件

官方自己釋出的兩個 sw 範例檔,拿去驗它自家的 DTD 是不通過的(在只允許全銜與機關代碼的分支後面多帶了單位代碼)。這代表收文端並沒有做嚴格的 DTD 驗證。所以格式驗證過了不等於對方一定收得下,最終還是要實際發一份文確認。

確認發文成功的判準也有官方說法:以受文者清單的「使用者確認時間」為準。發文夾狀態顯示「公文傳送中」是正常現象,不代表失敗。

我們把這段做成一個工具

把上面這些規則寫成程式之後,發一封公文就只剩填表單。

我們做了一個公文交換檔產生器,只解決「產出合規交換檔」這一段,不取代文書系統。開網頁填表單就產出 di 與 sw,不必安裝任何瀏覽器元件,Mac 和 Windows 都能跑。

受文者清單與地址簿查詢畫面
受文者清單與地址簿查詢畫面
  • 內建全國地址簿,打「鳳山忠孝國小」就找得到官方全名,停用的機關不會出現在選項裡
  • 落檔前先跑 DTD 驗證,不通過就不寫檔,格式問題在送出前就被擋下
  • 附件依規範以總大小 2048KB 控管,超標在上傳當下就擋,不是等發文才發現
  • 依政府文書格式參考規範排版的 A4 預覽,發文前用肉眼校對,可以列印或存成 PDF
  • 常發的機關存成常用清單或群組,一鍵帶入正副本與含附件設定

這是恆遠自己要用才做的東西,做完發現同樣卡住的公司不少,所以開放授權。採單一法人使用、原始碼交付、一年內格式更新,三種可以搭配,價格個案洽談。想聊聊你們的情況可以走客製化系統諮詢

發一封公文

土法(官方工具)

用產生器

前置

裝元件、讀手冊,第一次約半天

開網頁

查機關代碼

自己下載地址簿比對全名

打簡稱就查得到

格式驗證

送出後才知道

落檔前先驗,不過就不產

附件超標

發文時才被擋

上傳當下就擋

ℹ️我們怎麼看

電子公文交換這件事,政府端的工具是為「每天發幾十封的機關」設計的,這個設計本身沒錯。真正被漏掉的是偶爾要發文的民間單位:一年幾封文,卻要付出跟機關一樣的安裝與學習成本。我們的判斷是,未來三年這塊不會有大廠進來,因為市場太小又太專。對中小企業老闆來說,判斷方法很簡單:先算你一年要發幾封文。超過一百封,買整套公文系統划得來;低於這個數,找一個只解決產檔的輕量做法就夠了。

關於恆遠

恆遠數位是會做產品的客製化軟體團隊,累積 40+ 企業客製案落地,公司內部每天跑 20+ 個 AI 流程。公文交換檔產生器是我們自己要用而做出來的工具,從讀規範、拿官方 DTD 到實際驗證都是自己走過一遍。

Q我的公司可以跟政府電子交換公文嗎?

可以。全國可做電子交換的非公務機關約一萬五千家,包含私人企業、學校、醫院與財團法人。需要先向經濟部申請商工電子公文交換會員並取得工商憑證卡。

Q一定要買整套公文管理系統嗎?

不一定。如果只是要把公文轉成合規的 di 與 sw 檔丟進 WebjAgent,用官方免費工具或輕量產生器就夠。整套公文管理系統適合每天大量收發、需要簽核流程與歸檔的單位。

Q機關代碼去哪裡查?查不到代表什麼?

查公文電子交換系統地址簿,這是政府開放資料、每日更新、免費下載。查不到通常是因為用了簡稱,地址簿存的是官方全名。換全名再查一次仍然沒有,才代表該機關沒有登記電子收文。

Q這個工具怎麼授權?多少錢?

採單一法人使用、原始碼交付、一年內格式更新,三種可以搭配。交付含程式、安裝設定與教育訓練一次。價格依授權範圍個案洽談,來信說明貴公司的發文量與需求即可。

Q公文格式如果變更怎麼辦?

現行規範是 109 年 12 月修正版,DTD 家族仍稱 104DTD。授權含一年內的格式更新。格式變更由檔案管理局公告,我們會依公告更新樣板層。

Q附件有大小限制嗎?

有,而且管的是總大小不是單檔。官方工具的提示是附件檔案總大小不要超過 2048KB。超過的話建議改在說明段落敘明檔案下載位址,不要硬塞附件。

延伸閱讀

政府相關的合規門檻不只公文,網站無障礙也已經是標案硬門檻,可以看WCAG 2.2 合規路線圖。想了解一套系統從需求到驗收怎麼走,可以看系統開發流程完整拆解;系統上線後的維運成本則整理在客製化系統上線後三個月隱性成本

分享文章

AUTHOR

恆遠數位編輯團隊

查看作者頁

留言(0)

尚無留言,成為第一個留言的人吧!

需要網站系統架設或軟體開發?

無論是品牌官網、客製化系統還是應用程式,我們的團隊擁有豐富經驗,歡迎聯繫我們,讓專業為您的事業加分。