Guest Identity Domain¶
Team: Guest Experience Team
Services: 1
Domain color: #7c3aed
Guest identity resolution, profile management, certifications, and medical information. The single source of truth for all guest identity data across the platform.
Topology¶
Services¶
| Service | Database Engine | Schema | Tables | API Endpoints |
|---|---|---|---|---|
| svc-guest-profiles | PostgreSQL 15 | guests | 5 | 9 |
Data Ownership¶
Every data entity has exactly one owning service. Other services access it read-only through APIs.
| Data Entity | Owning Service | Read Access |
|---|---|---|
| Guest profiles | svc-guest-profiles | All services (read-only via API) |
| Guest certifications | svc-guest-profiles | svc-safety-compliance, svc-guide-management |
| Medical info | svc-guest-profiles | svc-emergency-response (read-only) |
Data Stores¶
svc-guest-profiles¶
- Engine: PostgreSQL 15
- Schema:
guests - Tables:
guest_profiles,certifications,medical_info,emergency_contacts,adventure_history - Features:
- PII encrypted at rest (AES-256)
- Composite index on (last_name, date_of_birth)
- Soft delete with GDPR data retention policy
- Volume: ~800 new profiles/day peak season
- Backup: Continuous WAL archiving, daily base backup, 90-day PITR (GDPR)
Bounded Context Rules¶
These rules are non-negotiable for this domain.
- Guest identity resolution always flows through svc-guest-profiles — services MUST NOT maintain shadow guest records
- PII is encrypted at rest (AES-256) with GDPR-compliant retention policies
- Identity verification uses four-field matching (ADR-007)
- Temporary guest profiles have a 90-day TTL with merge-on-return semantics (ADR-008)
Cross-Domain Integration¶
Outbound (this domain calls)¶
| Source | Target | Target Domain | Action | Async |
|---|---|---|---|---|
| svc-guest-profiles | svc-reservations | Booking | Query past bookings | No |
| svc-guest-profiles | svc-analytics | Support | Get satisfaction scores | No |
Inbound (called by other domains)¶
| Source | Source Domain | Target | Action | Async |
|---|---|---|---|---|
| svc-check-in | Operations | svc-guest-profiles | Validate guest identity | No |
| svc-reservations | Booking | svc-guest-profiles | Validate guest identity | No |
| svc-reservations | Booking | svc-guest-profiles | Validate participant | No |
| svc-partner-integrations | External | svc-guest-profiles | Validate guest identity | No |
| svc-safety-compliance | Safety | svc-guest-profiles | Validate guest identity | No |
| svc-safety-compliance | Safety | svc-guest-profiles | Get guest contact info | No |
| svc-gear-inventory | Logistics | svc-guest-profiles | Validate guest | No |
| svc-loyalty-rewards | Support | svc-guest-profiles | Get member profile | No |
| svc-emergency-response | Safety | svc-guest-profiles | Retrieve guest medical info and emergency contacts | No |
| svc-reviews | Support | svc-guest-profiles | Validate guest identity | No |
Domain Events¶
Events Produced¶
| Event | Channel | Producer | Summary |
|---|---|---|---|
guest.registered | novatrek.guest-identity.guest.registered | svc-guest-profiles | Published when a new guest profile is created |
Consumers of these events:
guest.registered→ svc-loyalty-rewards, svc-analytics
Architecture Decisions¶
ADRs that directly constrain or shape this domain.
| ADR | Title |
|---|---|
| ADR-007 | Four-Field Identity Verification |
| ADR-008 | Temporary Guest Profile |
Business Capabilities¶
Capabilities served by this domain's services.
| ID | Capability | Status | Description |
|---|---|---|---|
| CAP-1.1 | Guest Identity and Profile Management | IMPLEMENTED | Create, verify, merge, and manage guest identity records |
Quick Links¶
Generated from architecture/metadata/ YAML files by portal/scripts/generate-domain-pages.py.