付款收據是一份書面紀錄,用以確認款項已就商品或服務完成交割,並載明商家、付款日期、各品項、適用折扣與稅額、小費、最終總計、實付金額以及找零金額。若要在瀏覽器中製作付款收據,Receipt Maker 可讓你輸入商家名稱、付款日期、收據編號與顯示貨幣,接著逐一新增各品項的數量與單價,再輸入任何定額折扣、百分比稅額、定額小費與實付金額。預覽會顯示小計、稅額、小費、最終總計與找零,接著你可以透過瀏覽器對話框列印結果,或下載包含已驗證數值的獨立 HTML 檔案。一切都在目前的瀏覽器中執行,因此商家資料、品項明細、價格、備註與付款金額皆不會離開裝置,而金額運算採用整數最小貨幣單位,以避免 0.10 加上 0.20 變成 0.30000000000000004 這類浮點數進位誤差。

付款收據應包含哪些項目
一份清楚的收據會以白話回答四個問題:誰收到錢、買了什麼、何時付款、金額多少。下表列出一般零售或服務交易收據中常見的欄位,這些欄位與 Receipt Maker 中的輸入項目完全對應。
| 欄位 | 重要性 |
|---|---|
| 商家名稱 | 標示收款方,也是閱讀者最先查看的資訊。 |
| 付款日期 | 將交易定位於時間軸上,方便日後記帳與保固索賠。 |
| 收據編號 | 提供唯一參考,日後引用文件時不會產生歧義。 |
| 顯示貨幣 | 設定頁面上所有金額欄位所使用的單位與符號。 |
| 品項、數量、單價 | 明確顯示購買內容以及每單位議定價格。 |
| 定額折扣 | 當結帳時套用促銷時,從小計中扣除固定金額。 |
| 百分比稅額 | 在折扣後小計之上,額外加上依管轄區而定的稅率。 |
| 定額小費 | 記錄於加稅後另外加上之服務費。 |
| 實付金額 | 確認顧客實際交出的款項金額。 |
| 應付找零 | 當實付金額超過總計時,顯示應退回的差額。 |
Receipt Maker 也會在產生收據前驗證每一項輸入。空白、負數、非有限值、格式錯誤或過大的數值會被拒絕,而非默默以零取代。單價最多接受兩位小數,數量最多接受三位小數;單張收據最多容納 100 個品項,而超出可支援金額範圍的總計會在預覽中標示出來。
收據與發票:兩種不同的文件
發票是請顧客付款,通常在款項交付前開立。收據則確認款項已實際交付,在交易完成後開立。兩者的區別很重要,因為同一組數字在不同的文件上可能意涵截然不同,而混淆兩者的工具可能在不知情的情況下產生誤導性的紀錄。
| 面向 | 發票 | 付款收據 |
|---|---|---|
| 時機 | 付款前開立,以請求付款。 | 付款後開立,以確認付款。 |
| 主要用途 | 載明應付金額與到期日。 | 載明已付金額與任何找零。 |
| 未結餘額 | 發票未付或部分付款時顯示。 | 不適用 — 若已付金額低於總計,則停止產生。 |
| 最適合的工具 | 需要請款時使用 Invoice Generator。 | 付款已完成時使用 Receipt Maker。 |
Receipt Maker 刻意僅針對第二種情境設計。如果你需要針對未結清發票紀錄部分付款,正確的做法是使用支援付款分攤與稽核紀錄的記帳軟體,而非收據工具,因為本工具的收據模型會將任何未付餘額視為拒絕產生的理由。
Receipt Maker 如何計算總計
計算遵循一條明確的固定順序,而這條順序正是總計能如你所預期的原因。
- 每個經驗證的品項金額,皆為整數單價乘上最多三位小數數量後的進位結果。
- 所有品項金額相加,形成小計。
- 定額折扣從小計中扣除,且不得超過小計本身。
- 輸入的百分比稅率套用於折扣後小計,並進位至最近的最小貨幣單位。
- 定額小費於加稅後再加上。
- 最終總計因此等於折扣後小計加上稅額再加上小費。
在底層,每個兩位小數的金額輸入會先轉換為整數最小貨幣單位 — 一個主單位等同於一百個最小單位 — 因此 0.10 與 0.20 會變成 10 與 20,加總正好等於 30,而不會出現二進位浮點數尾數。整數形式就是實際儲存、相乘、相除與相加的型態,最後再以選定的貨幣符號格式化回顯示值。
依上述順序的試算範例
假設某位顧客在同一次交易中購買了三項商品:
- 品項 A:2 件,每件 $10.00,品項金額 $20.00。
- 品項 B:1 件,每件 $5.50,品項金額 $5.50。
- 品項 C:3 件,每件 $2.00,品項金額 $6.00。
小計為 20.00 + 5.50 + 6.00 = $31.50。套用 $5.00 的定額折扣後,折扣後小計為 $31.50 − $5.00 = $26.50。對 $26.50 課徵 8% 稅率,計算為 0.08 × 26.50 = $2.12,該值已是精確的最小貨幣單位,無需進位。接著再加上 $3.00 的定額小費。因此最終總計為 $26.50 + $2.12 + $3.00 = $31.62。若顧客交出 $40.00,應付找零為 $40.00 − $31.62 = $8.38。上述每個數字皆依循前述順序計算而得,而 Receipt Maker 對你所輸入的資料同樣套用此一順序。
建立一張已付款收據
開啟 Receipt Maker,依照表單所顯示的順序逐項填寫。
- 輸入商家名稱、付款日期、收據編號,並挑選你希望所有金額欄位使用的顯示貨幣。
- 新增每一項已付款品項,為每列填入說明、數量與單價,持續新增直到原始銷售的所有品項皆已列出。
- 輸入任何定額折扣,接著輸入適用於你所在地的百分比稅率,若有給予小費,再填入定額小費。請使用符合你實際情況的稅率,因為本工具並不內建各管轄區的稅率表或免稅規定。
- 輸入實付金額 — 也就是顧客交出的現金、刷卡總額或合併後的付款金額。
- 產生已付款收據。預覽會顯示小計、折扣、折扣後小計、稅額、小費、總計以及任何找零;若實付金額低於總計,工具會拒絕產生。
- 在變更任何欄位之前,請先仔細檢查預覽中的每一列與總計,接著列印或下載結果,因為編輯欄位會清除上次產生的輸出。
如果你在工作時讓頁面保持開啟,請在每次編輯後重新產生一張新的收據,並在將文件交給他人之前,先將新輸出與原始付款憑證進行比對。
列印或下載你的完成收據
產生收據後,可使用兩種輸出路徑。「列印收據」控制項會開啟瀏覽器的列印對話框,讓你可以將頁面送往實體印表機,或在作業系統支援時透過對話框另存為 PDF;底層的 window.print 行為是由瀏覽器本身所提供。「下載 HTML」控制項則會儲存一份獨立的 HTML 檔案,其中包含預覽中已驗證的數值與一份合規免責聲明,該檔案之後可在任何一般瀏覽器中重新開啟並再次列印。兩種輸出皆使用你所輸入並通過驗證的數值,且任何以文字編輯器開啟該檔案的人皆可加以修改,因此兩者皆不應單獨視為防竄改或具備財務效力的紀錄。
在收據產生後變更任何輸入欄位,將會清除上次產生的結果;這正是本工具要求你在每次編輯後重新產生新收據,而非重複使用先前輸出的原因。
本工具無法取代的事
Receipt Maker 是一款針對單筆已完成付款的通用便利工具,而非合規或會計系統。它不會驗證商家身分、確認信用卡或現金付款確實發生、套用官方稅務規則、產生財務或簽章收據,或封存紀錄。其中不含任何稅率表、產品免稅項目、進位規定、發票編號規則或特定管轄區的合規邏輯,也不會維護顧客帳戶、連續分類帳、庫存、退款、作廢或支付處理商紀錄。
若收據需符合法律、稅務、保固、請款、保險或受規範紀錄保存等要求,請保留由交易所需的授權支付處理商紀錄、收銀機日誌、銀行入帳、簽署合約或其他來源文件,並在不確定時諮詢合格專業人士或相關主管機關。書面收據是有用的摘要,但具備法律效力的是來源文件本身。
若你需要更聚焦於現金或信用卡付款的版本,請參考 現金付款收據指南,該指南介紹同一套 Receipt Maker,但更聚焦於現金交易的備註與面額處理。