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.

Primary stale source branch_sync_status
Calculator policy Disabled after 30 min
Inquiry retention 180 days
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

Hours Daily 10:00 - 20:00
Phone +81-3-0000-1101
Freshness 2026-05-15 20:29

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
Implementation scope

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.
Still out of scope

What this phase does not activate

  • Real production deployment and cron rollout
  • Real email delivery
  • Real Telegram delivery