# Branch Cash-Out Demo Playbook (Manager Presentation)

## Demo Purpose

Show an end-to-end branch cash-out flow with clear role separation:
- Customer submits request.
- Branch authorizer validates and approves.
- Branch manager disburses cash.

## Demo Users (Seeded)

1. Customer
- Email: branch.customer@mercurypay.dev
- Password: CustPass@1
- Role: customer
- Expected capability: create and view own branch cash-out requests

2. Branch Authorizer
- Email: branch.authorizer@mercurypay.dev
- Password: AgentPass@1
- Role: ops_agent
- Expected capability: view cash-out requests and authorize pending requests

3. Branch Manager
- Email: branch.manager@mercurypay.dev
- Password: OpsPass@1
- Role: ops_supervisor
- Expected capability: authorize and disburse authorized requests

## Seed Sources

1. In-memory dev login seeds
- apps/wallet_web/lib/wallet_web/dev_seeds.ex

2. SQL dev users and credentials
- apps/wallet_database/priv/repo/seeds_dev_admin_users.sql

## Demo Storyboard (7-10 minutes)

1. Customer Journey (2-3 min)
- Login as branch.customer@mercurypay.dev.
- Open customer branch cash-out page.
- Submit request: amount, currency, optional branch.
- Highlight that status is `pending`.

2. Branch Authorization (2-3 min)
- Login as branch.authorizer@mercurypay.dev in admin portal.
- Open branch cash-out queue.
- Find the customer request and authorize it.
- Highlight status change to `authorized`.

3. Branch Disbursement (2-3 min)
- Login as branch.manager@mercurypay.dev.
- Open same request.
- Disburse with receipt reference.
- Highlight status change to `disbursed`.

4. Customer Confirmation (1 min)
- Return to customer account.
- Show final `disbursed` status in request history.

## What to Emphasize to Manager

1. Operational control
- Separation of duties between authorizer and disburser reduces fraud risk.

2. Traceability
- Every state transition is explicit and auditable.

3. Practical branch flow
- Supports both self-service request and walk-in branch-assisted request creation.

4. Current maturity and next hardening
- Implemented: request, authorize, disburse, status tracking UI.
- Next: wallet available-balance pre-check, pending cancellation, SLA aging indicators.

## Optional One-Slide Summary

Title: Branch Cash-Out: Controlled Cash Disbursement Workflow

1. Input channels
- Customer self-request
- Branch-assisted request creation

2. Control gates
- Pending -> Authorized (ops agent)
- Authorized -> Disbursed (ops supervisor)

3. Outcome
- Safer cash handling, clear accountability, demo-ready operational process
