学習・技術検証用デモ — 本システムは実際の銀行サービスではありません。

公開情報をもとに構築した教育目的のシステムです。実在する個人情報・口座情報・機密情報・認証情報等を入力しないでください。

ミニ銀行ACADEMY SYSTEM LEARNING
教材メニュー
学習進捗0 / 134
あと134項目
INTERMEDIATE · 中級COURSE 09 · BANKING ENGINEERING

銀行エンジニアリング Lab 08:Pricing Lab(版の承認 → 見積り → 契約 → 満期・中途解約)

新しい金利を提案・承認し、見積りから定期預金を契約して、旧契約が変わらないことと、中途解約の利息を確かめます。

36 / 55
BANKING ENGINEERING · 銀行エンジニアリング

v8以降に実装した台帳・記帳エンジンなどを実際に動かし、正常時と異常時の両方から銀行システムの構造を学ぶ。

Prerequisite: BANKING SYSTEM

LEARNING GOALS

このページで学ぶこと

  • 版の提案と別人の承認
  • 見積りの失効と契約時の固定
  • 中途解約の利息の手計算

PLAIN LANGUAGE

まず、ここだけつかむ

1

新しい金利を提案し、別人が承認し、有効開始日から見積りと契約に反映します。

2

旧契約が変わらないことと、見積りの失効を自分の操作で確かめます。

3

中途解約の利息を手計算し、実際の支払と比べます。

DIFFICULT PARTS, STEP BY STEP

難しいポイントを、順番にほどく

専門用語を覚えることより、「なぜ必要か」「このシステムのどこで使うか」を理解することが目標です。

01

施行日

やさしく言うと

新しい価格が効き始める日です。

なぜ必要?

過去に遡って価格を変えないためです。

Minibankでは

effective_from。承認日の翌営業日以降。

02

見積りの有効期限

やさしく言うと

見積りが使える期間です。

なぜ必要?

古い条件で契約が結ばれないようにするためです。

Minibankでは

発行と同じJST日のうちで、かつ発行の翌営業日まで。過ぎるか版が切り替わると PR003。

03

中途解約利息

やさしく言うと

満期前に解約したときに支払う利息です。

なぜ必要?

商品ごとの条件を契約に固定して計算するためです。

Minibankでは

契約時の early_rate_bps とその日までの暦日数。

準備

seed の状態では、全期間が年0.80%・中途解約は元本のみです。提案は operator、承認は管理責任者で行います。

open 'http://localhost:54336/local/login?as=operator&next=/admin/pricing'

演習

演習操作観察すること
1. 版を提案するoperator:12か月、年1.20%、中途解約0.50%、有効開始は翌営業日以降承認待ちのキューに入る。今日の日付を指定すると PR004
2. 自分で承認してみるoperator のまま承認を試す権限がなく拒否される。管理責任者が提案した場合も、本人の承認は PR005
3. 別人が承認するmanager:承認有効開始日になるまで、契約の条件は変わらない
4. 旧契約と新契約有効開始日以降に見積り → 契約新契約は年1.20%。旧契約は年0.80%のまま
5. 見積りの失効見積りのあとで、別の版が有効になる(または日付が変わる)状態で契約PR003 で拒否され、見積りのやり直しになる
6. 中途解約新契約を100日後に中途解約する場面を手計算元本×50bp×100日÷3,650,000の切り捨てが支払われる

振り返り

  • 価格を変えても既存契約が動かないことを、どの列で確認したか
  • 見積りと契約の間に条件が変わったとき、なぜ契約を止めるほうが安全か

CHECK YOUR UNDERSTANDING

3問で理解チェック

答えを頭の中で考えてから、各項目を開いて確認してください。

Q1今日の日付を有効開始日にして提案できますか?
答え

できません。未来の営業日だけです(PR004)。

Q2年0.50%の中途解約で、100万円を100日預けたときの利息は?
答え

1,000,000×50×100÷3,650,000 の切り捨てで 1,369円です。

Q3新しい版が有効になった日、旧契約の年利は?
答え

変わりません。契約時の値のままです。

ここまで読めましたか?

完全に暗記する必要はありません。大切な考え方を説明できそうなら押してください。

SOURCE TRAIL

根拠と関連教材

CURRENT IMPLEMENTATIONは確認したrepository内の実装です。HISTORICAL IMPLEMENTATIONは導入・修正の履歴で、後続migrationによる再定義があり得ます。RELATED LESSONは教材への案内で、実装の一次Sourceではありません。ASSUMPTIONは仮定、UNKNOWNは未確認を表します。

確認基点: d02eae8914f39cbf06bfe422dc39c71886f82b3e / 2026-09-11。稼働環境への適用確認: UNKNOWN。パス実在の自動検査と、記述した技術的事実の確認は別です。

Implementation Status: IMPLEMENTED IN MINIBANK(この教材が扱うコードの範囲)

  • RELATED LESSON/docs/be-deposit-pricing-versions価格の版と契約時の固定
  • RELATED LESSON/docs/be-deposit-interest-fee-accounting利息と手数料の会計
  • CURRENT IMPLEMENTATIONsrc/app/admin/(protected)/pricing/page.tsxPricingPage()管理画面 預金価格(表示は PricingAdminView)
  • CURRENT IMPLEMENTATIONscripts/banking/v15-pricing.test.mjs版の承認、遡及の拒否、契約時の固定、見積りの失効、日次残高の利息、手数料、中途解約、照合のDBテスト