1円のズレは、ただの計算ミスで終わりません。決済、送金、ポイント、サブスク、暗号資産、給与前払いのように、生活者のお金を預かる機能では、同じ1万円を二重に使わせるだけで帳簿も信頼も壊れます。
2026年6月29日に更新された `Fintech Engineering Handbook` は、お金を扱うソフトウェアで何を疑い、どこを記録し、どの処理を二重に走らせないかを整理した公開資料です。エンジニア向けの資料ではありますが、キャッシュレスや会員アプリを運営する企業にとっても、かなり実務的な論点を含んでいます。
お金を扱う機能では、便利なUIやAI活用より先に「存在しないお金を作らない」「記録を失わない」「外部サービスをそのまま信じない」という土台が必要です。
Fintech Engineering Handbookとは何か

Fintech Engineering Handbookは、Voytek Pitula氏が公開している、お金を扱うソフトウェアの設計パターン集です。対象はフィンテックに入ったばかりの人、すでに金融系の開発に関わる人、そして金融以外から「お金を扱うシステムは何が違うのか」を知りたい人です。
内容はかなり広く、金額の表し方、丸め処理、通貨の扱い、台帳、複式簿記、決済時刻と記帳時刻の違い、監査証跡、冪等性、外部API、Webhook、照合、権限管理、テストまで並びます。単なる技術メモではなく、事業者があとから「なぜこの残高になったのか」を説明するための設計集に近い資料です。
| 見るべき領域 | 代表的な論点 |
|---|---|
| 金額表現 | floatを避け、最小単位の整数や任意精度型を使う |
| 台帳 | 残高を直接書き換えず、移動履歴から計算する |
| 時刻 | 取引発生、記帳、実際の資金移動を分ける |
| 外部連携 | WebhookやAPIレスポンスを検証し、照合する |
重要なのは、これが銀行だけの話ではないことです。小売アプリのポイント、ECの返金、月額課金、自治体のデジタル商品券、社内精算ツールでも、少額のお金や疑似通貨を扱うなら同じ問題が起きます。
1円のズレを防ぐ3つの原則

ハンドブックの中心にある原則は、かなりシンプルです。存在しないお金やデータを作らない。起きたことを失わない。外部サービスも内部コンポーネントもそのまま信じない。この3つです。
たとえば残高1万円の口座に、同時に1万円の出金リクエストが2本走ったとします。一般的な通知処理なら重複通知として後で消せるかもしれません。しかしお金の処理では、2本とも通すと存在しない1万円を作ったことになります。ここで必要になるのが、資金の予約、二重実行を防ぐ冪等性キー、処理途中で落ちても再開できる状態管理です。
端数処理も見落とせません。手数料、利息、為替、ポイント還元では小数点以下が出ます。丸め方は単なる好みではなく、誰が端数分を受け取るかという事業判断です。だから計算途中で安易に丸めず、保存や表示など境界に来た段階で明示的に扱う必要があります。
お金の機能を作る前に、ドメインの言葉とデータ構造をそろえる本を手元に置くと、仕様の抜けを見つけやすくなります。
当サイトはAmazonアソシエイトとして、適格販売により収入を得ています。
決済・ポイント・サブスクの現場で見るポイント

生活者向けサービスで見るなら、まず確認したいのは「残高を直接持っていないか」です。残高テーブルだけを信じる設計だと、修正や返金が重なったときに説明が難しくなります。取引履歴、手数料、補正、取消を残し、残高はそこから導く方が監査しやすくなります。
次に、外部決済や本人確認サービスから来る通知をどう扱うかです。Webhookは遅れて届くことも、同じ内容が複数回届くこともあります。届いた順番を信じすぎると、返金済みなのに課金済みへ戻るような事故が起きます。受け取った事実、検証結果、照合元を保存し、失敗した処理を後で再実行できる形にしておく必要があります。
もう一つは権限です。誰が手数料率を変えたのか、誰が大口返金を承認したのか、誰が本番に反映したのか。お金の処理では、コードの正しさだけでなく、操作した人と理由を後から説明できることが信頼の一部になります。
次に見るポイント
キャッシュレス、ポイント、サブスク、企業間決済が広がるほど、企業は「金融会社ではないから関係ない」とは言いにくくなります。少額でもユーザーのお金に近い値を扱うなら、事故は問い合わせ対応ではなく信用問題になります。
次に見るべきは、便利な決済導線を増やす企業が、台帳、照合、権限、再実行の仕組みまで説明できるかです。UIが速いサービスほど、裏側で1円をどう守っているかが差になります。
関連記事
参考リンク
- Fintech Engineering Handbook
- GIGAZINE: お金を扱うソフトウェアで「1円のズレ」も起こさないための設計原則をまとめた「Fintech Engineering Handbook」とは?
- 翔泳社: 達人に学ぶDB設計 徹底指南書
本記事は公開資料をもとにした技術・ビジネストレンドの整理であり、特定サービスの安全性を評価するものではありません。




