flowchart LR subgraph Public["where-woof.com — public"] U[Finder\nscans QR/NFC] --> T["GET /t/:code\npublic tag page"] T -->|geolocation + fingerprint| SCAN["POST /t/:code/scan"] T -->|finders number| FB["POST /t/:code/contact"] O[Order /order\nStripe Payment Link] --> BUY[Stripe Checkout] C[Contact /contact] --> MAIL[SMTP SES] end subgraph Core["Go frontend .13:3020"] SCAN --> GATE{"shouldAlert\ngates"} GATE -->|paid sub + SMS pool + caps| REC[record scan] GATE -->|pass| SMS[SMSGlobal HTTP] FB -->|dedupe| SMS2[SMSGlobal HTTP] end subgraph Admin["admin.where-woof.com — Laravel/Filament .13:3031"] A[Staff manage\nusers/tags/orders/plans] --> PG WH["POST /webhooks/stripe"] -->|events| ORD[orders.status + tag transitions] end subgraph Data["Postgres .13:5434"] PG[(wherewoof DB\nusers tags scans\norders plans billing_events)] end SMS -->|SMS alert + map link| OWNER[Owner phone] SMS2 -->|finder number| OWNER2[Owner phone] BUY -->|"checkout.session.completed"| WH MAIL -->|"hello@where-woof.com"| INBOX[Inbox] REC --> PG PG --> A PG --> ORD