Phase 3 implementation
Rates, branch details, calculator, and contact intake now share one display-data contract.
The public site now reads branch-level rates from the display model, exposes stale guidance, and keeps inquiry storage separate from future notification delivery.
Branch selector
Compare branch freshness before moving deeper into the site.
The home snapshot stays lightweight, while detailed rates, branch pages, calculator, and contact flow now have dedicated pages.
Shinjuku, Tokyo
Kabukicho Branch
Main branch focused on fast over-the-counter service for central Tokyo visitors.
Fresh
Updated 8 min ago
Rates are older than 30 minutes. Calculator remains disabled until sync recovers.
USD
US Dollar
- We sell
- 149.10
- We buy
- 147.80
EUR
Euro
- We sell
- 161.20
- We buy
- 158.90
CNY
Chinese Yuan
- We sell
- 20.85
- We buy
- 20.10
What Phase 3 delivers
- Data-backed /rates, /branches, /branches/{slug}, /calculator, and /contact pages.
- Stale-state thresholds wired to UI and calculator behavior.
- Secure inquiry storage flow with CSRF, validation, honeypot, timing, and rate limit controls.
What this phase does not activate
- Real production deployment and cron rollout
- Real email delivery
- Real Telegram delivery