FSTS 介接規格書(V1.0 呈核版)
定義新一代複委託系統對外與對內介接規格基線,作為需求確認、系統分析、程式開發、聯測驗收與後續維運之共同依據。1
平台前提:MSSQL / .NET Core / UNIX(Linux)。1 編製單位:凌群電腦/專案規劃團隊。1 回到 Planning 總覽。
文件目的與適用範圍
本文件涵蓋:
- FIX Gateway(上手交易)
- 前台 API(客戶/分公司)
- 批次檔案交換(SFTP)
- 銀行與保管行介接
- 會計介接
- 監控告警與錯誤回補
本版為呈核版本:建立可發包、可估工、可驗收的接口治理框架。正式專案啟動後,各上手券商、銀行、保管行及內部相依系統仍須個別產出 ICD(Interface Control Document)與 Message Mapping 表。1
五條介接設計原則
- 核心交易域與介接域解耦:OMS、成交、清算、帳務不直接依賴單一上手格式,統一先轉成 Canonical Message
- 同步與非同步並存:下單/改單/刪單屬低延遲同步流程;成交回報、檔案交換、對帳與補單採事件化與批次並行
- 固定欄位與彈性擴充並存:針對市場別、商品別、上手別保留 Extension 欄位與 Mapping 規則
- 不可否認與可追溯:所有介接訊息均應有
Message ID、Correlation ID、來源系統、時間戳、簽章/摘要與留存政策 - 可觀測與可重送:每一條介接流程需可被監控、回放、重送、人工介入與差異追蹤
整體介接架構(三層 + 監控)
建議採三層式介接架構:
| 介接層級 | 主要用途 | 典型協定 | 關鍵設計重點 | 開發優先級 |
|---|---|---|---|---|
| Channel/API Layer | 客戶與內部前台即時查詢/下單 | HTTPS REST、WebSocket | 驗證授權、限流、Idempotency、追蹤碼 | P1 |
| Gateway/Adapter Layer | 與上手、銀行、保管行、會計等外部系統對接 | FIX、SFTP、MQ、DB Link | 欄位轉換、重送、序號控管、容錯 | P1 |
| Canonical Service Layer | 統一交易事件與主資料語意 | Internal API / Event Bus | 避免直連耦合、版本化、審計軌跡 | P0 |
| Monitoring/Control | 介接監控、補送、重跑、告警 | Dashboard、Alert Hook | 營運可視性、Runbook、值班支援 | P0 |
設計關鍵:
Canonical Service Layer與Monitoring/Control同列 P0,反映「先把核心語意與可觀測性建好,才能承接上手差異」的原則。3
FIX Gateway 規格基線
FIX Gateway 為核心外部交易介面,負責與海外上手/執行券商進行 Session 管理、委託傳輸、成交回報、拒單、補傳與對帳。
| 項目 | 規格基線 | 功能作用 | 重要性 | 開發順序 |
|---|---|---|---|---|
| FIX Session | FIX 4.2 為主,保留升級至 FIX Latest 之映射能力 | 建立標準化交易訊息通道 | 最高 | 1 |
| Session 控制 | Logon/Logout/Heartbeat/TestRequest/SequenceReset/ResendRequest | 維持連線穩定與序號正確 | 最高 | 1 |
| 交易訊息 | NewOrderSingle/OrderCancelRequest/OrderCancelReplaceRequest/ExecutionReport/Reject | 承接委託全生命週期 | 最高 | 1 |
| Mapping Layer | 上手別欄位模板、代碼映射、Tag 規則 | 避免 OMS 與單一上手耦合 | 最高 | 1 |
| Replay & Archive | 訊息封存、查詢、補送與重播 | 支援對帳、稽核、事故回復 | 高 | 2 |
| 健康監控 | Session 狀態、延遲、拒單率、重送次數 | 支援 7×24 維運 | 高 | 2 |
FIX 介接最少交付物
- Session 設定表
- CompID 清單
- IP/Port 與白名單
- 交易時段表
- MsgType/Tag Mapping
- 欄位必填規則
- Reject Code 對照表
- 證券代碼轉換規則
- 重送與斷線復原流程
API/Web 通路規格
| 介面群組 | 主要 API | 用途 | 安全要求 | 優先級 |
|---|---|---|---|---|
| 委託交易 | POST /orders、PATCH /orders/{id}、DELETE /orders/{id} | 下單、改單、刪單 | OAuth2/JWT、簽章、Idempotency-Key | P1 |
| 交易查詢 | GET /orders、GET /trades、GET /fills | 委託與成交查詢 | 權限分級、欄位遮罩 | P1 |
| 資產查詢 | GET /balances、GET /positions、GET /buying-power | 現金、庫存、可交易額度 | 資料新鮮度標示 | P1 |
| 客戶服務 | POST /withdrawals、GET /statements、GET /notifications | 出金、對帳單、通知 | 雙因子/覆核 | P2 |
| 管理與監控 | GET /health、GET /metrics、POST /replay | 健康檢查與補送 | 內網限定、特權審批 | P0 |
API 設計要求
- 所有交易類 API 均須支援
Request ID與Correlation ID,便於前中後台問題追蹤 - 交易 API 須支援 Idempotency Key,避免通訊抖動導致重複送單
- 查詢 API 應回傳資料版本與產生時間,避免營運端誤判即時性
- 對外 API 與內部 API 必須分級管理,避免把管理權限暴露到前台
檔案交換(FTP/SFTP)規格
用途:銀行入出金、保管行交割、行情/商品主檔、日終對帳、會計分錄、歷史資料匯入。統一採 SFTP + PGP/檔案摘要驗證。
| 檔案類型 | 來源 / 去向 | 頻率 | 主要欄位範圍 | 控制重點 |
|---|---|---|---|---|
| 銀行入金回饋 | 銀行 → 複委託 | 日內多次 | 客戶帳號、幣別、金額、交易序號、入帳時間 | 重複入帳防呆、異常金額告警 |
| 出金放行檔 | 複委託 → 銀行 | 日內多批 | 申請單號、覆核資訊、受款帳號、金額 | 四眼原則、批次摘要覆核 |
| 保管交割檔 | 複委託 ↔ 保管行 | 日終/交割日 | 證券代號、數量、DVP/RVP、交割日期 | 交割狀態追蹤、差異表 |
| 會計分錄檔 | 複委託 → 會計 | 日終 | 會計科目、借貸、幣別、金額、來源交易 | 重拋機制、分錄平衡檢核 |
| 商品/行情檔 | 外部來源 → 複委託 | 日更/盤中 | 代號、名稱、市場、價格限制、FX | 版本控管與上下架 |
銀行、保管行與會計介接要點
銀行介接
- 入金對帳:依虛擬帳號/交割帳號/流水號入帳,需支援重複交易檢核與異常待人工池
- 出金放行:申請 → 覆核 → 放行 → 回饋四階段;需保留審批與回執完整軌跡
- FX/匯兌:若涉及換匯,需區分申請匯率、成交匯率與實際入帳匯率
保管行介接
- 交割模式需支援 DVP/RVP、自由交付及例外人工調整
- 需保留交割失敗原因碼、補交割流程與差異清單
會計介接
- 採事件轉分錄,不應由會計系統反向決定交易語意
- 每一筆分錄均需帶來源交易主鍵、會計期間與重拋批次號
監控、錯誤處理與補送規格
| 監控面向 | 指標/事件 | 建議閾值 | 處置方式 |
|---|---|---|---|
| FIX Session | Disconnected、Sequence Gap、Reject 爆量 | 5 分鐘內未恢復即升級 | 自動重登/人工介入/停送某上手 |
| API | 5xx 比率、逾時、平均延遲 | 1 分鐘內連續高於基準 | 流量保護、重試、降級 |
| SFTP 檔案 | 到檔延遲、摘要不符、檔名不符 | 逾 SLA 即告警 | 通知窗口、人工收補、批次延後 |
| 銀行/保管行對帳 | 金額/數量差異 | 任何差異均需建單 | 差異清單、責任歸屬、補正 |
| 資料一致性 | 委託/成交/清算狀態不一致 | 單筆即列管 | 事件回補、重跑、人工覆核 |
版本管理與驗收要求
- 各類接口必須有版本號(例
FIX Session Profile v1.0、Order API v1、Bank SFTP Layout v1.2) - 欄位異動分為相容升級與破壞性升級;破壞性變更需經 CAB/專案 Steering Committee 核准
- 介接驗收應至少涵蓋:Happy Path、錯誤碼、逾時、重送、斷線復原、重複送單防呆、差異對帳
- 正式上線前需完成 SIT、UAT、外部聯測、平行測試與 Cutover Drill
建議開發順序(4 波)
| 波次 | 主要交付 | 理由 | 預估期間 |
|---|---|---|---|
| Wave 1 | Canonical Service、FIX Session、Order/Trade API、監控框架 | 先建立交易閉環與介接底座 | 0–6 月 |
| Wave 2 | 銀行/保管行/會計 SFTP、差異對帳、Replay 工具 | 建立交割與營運閉環 | 7–12 月 |
| Wave 3 | 客戶服務 API、通知、報表分發、監理介接 | 分化通路與營運能力 | 13–18 月 |
| Wave 4 | 高可用、容量優化、上手擴充、介接治理平台化 | 支援正式切換與多市場擴張 | 19–24 月 |
Review 結論
本文件已從**「列出要串什麼」提升到「如何以金融級治理把接口做成」。真正的風險不在是否能接上,而在是否能於多上手、多市場、多通路情境下穩定營運**,因此本規格將 Canonical Message、Replay、對帳、監控與版本化納入 P0/P1 範疇。
建議正式發包時,把本文件列為 RFP 附件,要求各投標廠商分別回覆:
- FIX 能力成熟度
- 銀行/保管行導入經驗
- 日終批次與補帳工具能力
- 介接事故處理 SLA
相關頁面
- 需求側:RFP 招標規格書、SA 規格書
- 資料側:邏輯資料模型(INT_MESSAGE_LOG、INT_FIX_SESSION)
- 驗收側:驗收矩陣 §C 非功能
- 切換:Cutover Runbook
補充資訊
2026-04-23 CI 同步版本校對
fb.fsts main 分支透過 CI 同步至 _raw/projects/fsts/docs/project/planning/富邦證券_新一代複委託系統_介接規格書.md(hash d791005f5325)。本頁的三層介接架構(Channel/API、Gateway/Adapter、Canonical Service)+ Monitoring、五條設計原則、FIX Gateway 規格、API/SFTP/銀行/保管行/會計介接、監控與版本管理要求、4 波建議開發順序皆維持不變。161718
重點校對結果:
- Canonical Service Layer + Monitoring/Control 同列 P0 — 設計關鍵一致17
- FIX 4.2 為主,保留升級至 FIX Latest 映射能力 — 規格基線不變19
- Wave 1–4 規劃(0–6 月 Canonical+FIX+Order API+監控;7–12 月 SFTP+差異對帳+Replay;13–18 月客戶服務+通知+報表分發+監理;19–24 月 HA+容量優化+上手擴充+介接治理平台化) — 一致18
- RFP 發包時要求投標廠商回覆四項:FIX 能力成熟度、銀行/保管行導入經驗、日終批次與補帳工具能力、介接事故處理 SLA — 一致20