> ## Documentation Index
> Fetch the complete documentation index at: https://docs.younegotiate.com/llms.txt
> Use this file to discover all available pages before exploring further.

# My Bill Pay Calendar

> Jane has three upcoming installment payments across two creditors.

## Real-World Example

Jane has three upcoming installment payments across two creditors. My Bill Pay Calendar should show those dates in one place and let Jane decide whether to connect Google or Microsoft Calendar for live updates.

## Visual Flow

```mermaid placement="top-right" actions={true} theme={"system"}
flowchart TD
    A["Consumer opens Payment Calendar"] --> B["Portal loads upcoming payments"]
    B --> C["Calendar displays payment dates and amounts"]
    C --> D{"Consumer connects external calendar?"}
    D -->|Yes| E["Portal starts Google or Microsoft sync"]
    D -->|No| F["Consumer uses portal calendar only"]
    classDef default fill:#F8FAFC,stroke:#64748B,stroke-width:1.5px,color:#0F172A;
    classDef actor fill:#E0F2FE,stroke:#0284C7,stroke-width:2px,color:#0C4A6E;
    classDef system fill:#F8FAFC,stroke:#64748B,stroke-width:1.5px,color:#0F172A;
    classDef decision fill:#FEF3C7,stroke:#D97706,stroke-width:2px,color:#78350F;
    classDef risk fill:#FEE2E2,stroke:#DC2626,stroke-width:2px,color:#7F1D1D;
    classDef outcome fill:#DCFCE7,stroke:#16A34A,stroke-width:2px,color:#14532D;
    class A actor;
    class B,C,E,F system;
    class D decision;
    class E,F outcome;
    linkStyle default stroke:#94A3B8,stroke-width:2px;
```

## How It Should Work

* It should show upcoming payments across the consumer account in calendar form.
* It should let the consumer connect, reconnect, or use the portal calendar without external sync.
* It should keep payment amount, creditor, and due-date context clear.

## How It Should Not Work

* It should not show another consumer payment schedule.
* It should not claim external calendar sync is active when credentials or permissions are missing.
* It should not show cancelled or deleted payments as active future events.

## Developer Notes

* This page is also the redirect target after Google or Microsoft calendar authorization.
* Live-update preference controls whether background jobs keep external calendar events synced.

## Related App Areas

* `routes/consumer/index.php`
* `app/Livewire/Consumer/UpcomingPayments.php`
* `app/Http/Controllers/Consumer/GoogleCalendarController.php`
* `app/Http/Controllers/Consumer/MicrosoftCalendarController.php`
