open-pos
地端優先的餐飲 POS。點餐、結帳、出單、班別日結,全部跑在店裡那台電腦上 —— 網路斷了照樣做生意,資料永遠在你自己手上。

含聯盟推廣連結
它幫你解決什麼
每一項都是台灣中小餐飲真的在付的代價,不是功能表上的字。
月租與綁約
商用 POS 常常綁約三年、月租照收,想換系統時資料還拿不回來。open-pos 不收錢,資料是你硬碟上的一個 SQLite 檔,隨時可以帶走。
網路一斷就收不了錢
雲端 POS 斷線等於停業。這套的主機就在店裡,網路只是拿來連平板與手機的,不是拿來收錢的。
出單機被驅動綁死
廠商 SDK 常常只有 Windows DLL,Linux 根本沒驅動。這套直接開 TCP 9100 送 ESC/POS 位元組,任何作業系統都一樣,也不用裝驅動程式。
金額差一元
金額一律用整數元,稅額依營業稅法施行細則的官方算法先算再倒扣銷售額,所以「銷售額 + 稅額 = 總額」永遠成立 —— 那是財政部的硬檢核。
月底對不上帳
每一筆動到錢的操作都寫進永不覆寫的稽核紀錄與流水帳。「誰在幾點把哪一單改成什麼」查得出來,結完帳再作廢也留得下痕跡。
資料不見
用 SQLite 的線上一致快照做備份(不是複製檔案,那會拿到壞掉的檔),可以直接還原。備份太久沒跑,健康檢查會亮燈提醒。
已經能用的部分
v1.0 的目標不是功能多,是「一台電腦一台出單機就能開店」而且不會掉資料。
觸控點餐
左菜單、右購物車,收銀員的動線一路往右不用回頭。品項磚刻意做大 —— 尖峰時間是站著用食指戳的。
結帳與找零
現金給快捷鈔票鍵,找零算出來之後停在畫面上讓人照著數。金額只由後端算一次,螢幕與資料庫不會出現兩個數字。
商品維護
分類、品項、規格都在 App 裡改,不必碰資料庫。改價會留下稽核紀錄,訂單明細則存當時的品名與單價快照。
區網多終端
同一支程式內建區網服務。之後的 KDS 與掃碼點餐走同一個後端,而收銀介面刻意不從區網提供 —— 連上店裡 Wi-Fi 的人載不到它。
金流:分得清「失敗」與「不知道」
刷卡失敗不可怕,收銀員當場看得到。可怕的是網路在送出之後、回應之前斷掉 —— 錢扣了,POS 卻不知道。所以送出前先寫一筆待確認並 commit,逾時記成「不知道」而不是「失敗」,它會進對帳清單而不是被當成沒發生。
吃到飽、單點、飲料店都做得了
吃到飽的收費是「一個人多少錢」,所以方案本身就是一個商品,人頭費就是那個商品點 N 份。點下去那一桌就生效、不必先切換模式 —— 那正是「忘了切模式、飲料全照原價收」的來源。設計前查了 25 套市售產品,連被推翻的兩個設計都寫在文件裡。
長什麼樣子
介面是深色的:餐飲店的燈通常很亮,而收銀螢幕整天都亮著。





開始之前要知道的四件事
先把限制講清楚,比事後解釋誠實。
- 1
現在還沒有安裝檔
v1.0 還在開發中,目前要自己從原始碼建置。安裝檔會在 v1.0 發行時放上 GitHub Release,這一頁也會同步更新。
- 2
單機架構,第二台是冷備
一台主機、一份 SQLite、單一寫入者(台灣市佔最大的商用 POS 也是同構做法)。第二台電腦裝同一份程式平常不開,主機故障時插備份、按還原、接手,大約十分鐘。不做多主同步。
- 3
資料不能放網路磁碟或雲端同步資料夾
SQLite 的 WAL 在 SMB 網路磁碟上會靜默損毀,而 OneDrive/Dropbox 會各自複製資料庫的三個檔案。程式偵測到這兩種路徑會直接拒絕啟動,並告訴你該放哪裡。
- 4
電子發票還沒做
排在 v1.4,會先做財政部免費的自建 Turnkey。在那之前這套系統不開立電子發票。
技術選擇
全部是純 Rust 相依,不引入任何 C 函式庫 —— clone 下來就能跑測試,這是開源專案的第一印象。
安裝:一份程式碼,七個安裝檔
同一份原始碼由 GitHub Actions 一次建出七個安裝檔:Windows 的 exe 與 msi、macOS 的 Apple 晶片與 Intel 各一、Linux 的 deb / rpm / AppImage。換平台不必改設定,資料庫檔案也可以直接搬過去。
Windows 10 / 11
x64-setup.exe(NSIS)· x64_en-US.msi
主要目標平台 —— 台灣餐飲店的收銀機幾乎都是 Windows。兩種安裝檔擇一,照精靈按完即可。
macOS
aarch64.dmg(Apple 晶片)· x64.dmg(Intel)
兩種晶片各建一個,下載對應的那個。開發與試用都很順,實際門市較少見。
Linux
amd64.deb · x86_64.rpm · amd64.AppImage
deb / rpm 交給套件管理員;AppImage 則 chmod +x 直接執行、不用安裝。另有不含桌面介面的 open-posd,可以只跑區網服務 —— 那是 KDS 與掃碼點餐的後端。
正式安裝檔會隨 v1.0 發行放上 GitHub Releases。在那之前想先試,用下面的建置指令最快 —— 它在三個平台上是同一組指令;跑起來之後加上 --demo 會建一份示範菜單,不用自己先輸入商品。
從原始碼跑起來
- 1
裝 Rust(stable)與 Node.js 20 以上。Windows 還需要 Microsoft C++ 建置工具。
- 2
clone 專案,npm install 裝前端相依。
- 3
npm run tauri dev 會同時起前端與 Rust 後端,開發模式的視窗就會跳出來。
- 4
想先看看長什麼樣子:cargo run --bin open-posd -- --demo 會建一份 38 個品項的示範菜單,並在區網起一個服務。示範資料是冪等的,不會汙染你自己建的菜單。
第一次建置 Rust 相依要幾分鐘,之後就快了。
接下來做什麼
順序是照「哪一段的關鍵路徑握在自己手上」排的 —— 發票卡在每家店自己去申請,掃碼點餐卡在顧客的手機。
- v1.0點餐 / 桌位 / 結帳分帳 / 出單 / 班別日結 / 金流設定 / 備份功能已齊
- v1.1KDS 廚房顯示螢幕(含離線佇列)已完成
- v1.2報表強化、稽核查詢、Excel 匯出已完成
- v1.3顧客掃碼自助點餐規劃中
- v1.4電子發票(自建 Turnkey)規劃中
- v2.0PostgreSQL 支援規劃中
授權與界線
MIT 授權,完整開源,沒有社群版與商業版之分。也先說明目前的範圍,方便你評估合不合用:雲端多店與會員點數還沒有規劃;信用卡建議走店裡原本那台實體刷卡機,POS 只記授權碼、不經手卡號(LINE Pay 與藍新則已經可以設定);硬體相容性靠社群回報慢慢累積。專案目前由一個人維護,先把範圍說清楚,才能把已經做好的部分照顧好。
看授權條款站長優惠
寫程式的地方,網路常常不是你的
NordVPN 把你的連線整條加密:咖啡廳與飯店 Wi-Fi 不再是別人的監聽管道,出差時銀行 App、公司後台、台灣的影音服務照樣連得回去。開 App 按一顆鈕就好,NordLynx 協定跑起來日常上網幾乎無感,一個帳號可以同時保護 10 台裝置。30 天退款保證,不合用全額退。
- 公共 Wi-Fi 全程加密,攔到也只是亂碼
- 137 國節點,出國連得回台灣服務
- 1 帳號 10 台裝置,30 天退款保證
含聯盟推廣連結

