各位 IT 夥伴、全端與 MarTech 工程師好。
最近私域流量和 LINE 官方帳號的 OMO(Online Merges with Offline)應用越來越吃重。大家在接案或開發內部系統時,一定遇過客戶提出這類剛需:
人資系統:「能不能幫忙把每月薪資單明細加密,直接 Push 到員工的 LINE / LINE WORKS?」
車廠/保養廠:「能不能做一個精美的汽車定期保養報告,讓車主看完直接點按鈕線上預約?」
用傳統的圖片 Push 罐頭訊息,不僅點擊率(CTR)低,更無法做到動態客製化;但如果用 Flex Message,只要沒搞懂 LINE 原生的 Schema 規範,發出去常常直接噴 APIError 400 或是手機端直接大破圖。
今天我將透過我們近期開發的視覺化編輯器 FlexCraft 中的兩套高階內置模板,毫無保留地分享如何刻出兼具隱私、多語系、且 100% 通過 API 校驗的商用高級卡片。
1️⃣ 🏢 企業電子薪資單明細:如何優雅處理 Grid 佈局與隱私盲區
企業人資系統要轉型無紙化,最怕的就是薪資項目對不齊。LINE Flex 沒有標準的 HTML 標籤,要做出像 Excel 般乾淨的明細,核心是利用 horizontal 佈局的 box 進行 nested(多層嵌套)設計。

💡 踩坑點與技術亮點:
水平網格完美對齊:左側項目(如 ➕ 基本底薪)不設 flex 權重,右側金額文字設定 "align": "end"。這樣無論金額是多少位數,右側的字體絕對一字排齊,不會發生任何物理壓縮。
字級極限的巨坑(400 報錯元兇):為了讓最下方的隱私警告提示(如本明細含有敏感個人資訊...)顯得低調,很多工程師會自作聰明寫 "size": "xxxxs"。請注意!LINE 官方規範的 Text 最下限只支援到 "xxs"!寫成 xxxxs 會直接被 API 判定為無效屬性(invalid property)而拒發。
正確做法:將字級保持在合法的 "xxs",並使用 "color": "#9CA3AF"(淡灰色)進行視覺弱化,既精緻又絕對合規。
核心 JSON 結構參考:
{
"type": "box",
"layout": "horizontal",
"contents": [
{ "type": "text", "text": "➕ 基本底薪", "size": "xs", "color": "#4B5563" },
{ "type": "text", "text": "$55,000", "size": "xs", "color": "#1F2937", "align": "end" }
]
}
2️⃣ 🚗 愛車保養與定期檢驗報告:OMO 線下數據留存的終極實踐
對於實體汽車修配廠或連鎖車行,這張卡片是提升車主「二次進廠率」與訂單轉換率的大殺器。

💡 開發痛點與 OMO 實戰解法:
100% 繞過手機端破圖限制:很多人在測試時直接外連 Unsplash 等免費圖庫網址,結果在 LINE 手機實機上往往是一片空白。這是因為 LINE 引擎對 URL 後方帶有問號(?)的動態裁切參數(如 auto=format...)相容性極差,且大廠常有防盜鏈屏蔽。
架構師的標準解法:在生產環境中,務必將圖片下載後上傳至自建的雲端儲存(如 Cloudflare R2,每月 10GB 免費額度,最重要的是免出流量費/免頻寬費!),拿到尾端帶有 .jpg 或 .png 的純靜態 HTTPS 直鏈。
後端狀態動態映射:在後端(例如我們使用 Go 語言)撈出工單後,可根據車檢數據,動態將對應區塊切換為 ✓ 已完成 (綠色 #16A34A) 或 ⚠ 建議更換 (紅色 #DC2626)。這種高對比的色彩心理學,能強烈引導車主點擊底部的主要行動按鈕(CTA)預約回廠。
結論
不管是 B2B 的企業內部行政通知,還是線下實體店鋪的 OMO 數位轉型,唯有嚴格掌握 LINE Flex Message 的原生規範,系統才能在雙語環境中穩健不翻車。
如果你不想每次都對著幾百行密密麻麻的 JSON 盲猜排版、反覆測試,歡迎試試我們的 LINE 視覺化產生器 FlexCraft,一鍵支援台日雙語系模板、安全校驗與長效圖床最佳化,助你的 LINE 開發效率翻倍!
GitHUB: https://github.com/arieslee/line-flex-message-templates