Ghasi Melmastoon — Service Index
22 services grouped by bounded context. Each service has the standard 17-doc deep bundle under services/<service>/, and a one-page summary under docs/03-microservices/<service>.md that participates in the strategic doc set. Source intent for the catalog lives in system.md; the canonical end-state stack and contracts are in the README.
When a service bundle and the strategic docs disagree, the strategic docs (docs/01..19-*.md) win until the service bundle is brought to readiness via the audit loop in docs/standards/SERVICE_READINESS.md.
Identity & Tenancy
| Service | Responsibility | Deep bundle | Catalog summary |
|---|
| tenant-service | Tenant lifecycle, plan, billing identity, feature flags, settlement currency, theme binding, onboarding state | bundle | summary |
| iam-service | AuthN (JWT access + refresh), OIDC/SAML SSO, RBAC + ABAC, device binding for the desktop app, API keys, session revocation | bundle | summary |
Property & Inventory
| Service | Responsibility | Deep bundle | Catalog summary |
|---|
| property-service | Property + room + room-type catalog, amenities, geo-location, photos, policies, calendar variants | bundle | summary |
| inventory-service | Availability, allocation, overbooking guard, stop-sell windows, room state lifecycle (clean / dirty / OOO / OOS) | bundle | summary |
Reservations & Pricing
| Service | Responsibility | Deep bundle | Catalog summary |
|---|
| reservation-service | Reservation aggregate (book → confirm → check-in → check-out → no-show / cancel), walk-ins, group bookings, modifications, channel port | bundle | summary |
| pricing-service | Rate plans (BAR, weekly, government, corporate, non-refundable), restrictions (MinLOS / CTA / CTD), seasonal calendars, FX snapshot at confirm | bundle | summary |
Operations
| Service | Responsibility | Deep bundle | Catalog summary |
|---|
| housekeeping-service | Housekeeping board, task assignment, room turnover SLA, AI-suggested cleaning order, offline updates from desktop | bundle | summary |
| maintenance-service | Work orders, asset registry, preventive schedules, OOS room coordination | bundle | summary |
| staff-service | Staff profiles, roles, shifts, lightweight time tracking; integrates with iam-service for identity | bundle | summary |
Finance
| Service | Responsibility | Deep bundle | Catalog summary |
|---|
| billing-service | Folios, charges, taxes, invoices, refunds, end-of-day reconciliation, cash-drawer accounting, dual-currency lines (transaction + settlement) with FX snapshot | bundle | summary |
| payment-gateway-service | Pluggable payment adapters: PayPal, Visa/Debit, cash-on-arrival reconciliation, MFS (JazzCash, Easypaisa, Fawry, M-Pesa, Wave), Sharia-compliant policy enforcement | bundle | summary |
Communication
| Service | Responsibility | Deep bundle | Catalog summary |
|---|
| notification-service | Multi-channel delivery (email, SMS, push, WhatsApp, Viber), pre-arrival sequences, receipts, post-stay feedback, AI-drafted multilingual messages with provenance | bundle | summary |
Reporting & Analytics
| Service | Responsibility | Deep bundle | Catalog summary |
|---|
| reporting-service | Twelve canonical reports (occupancy, ADR, RevPAR, GPAR, channel mix, payment mix, EOD, audit log, etc.), scheduled exports (PDF / CSV), offline cache of recent reports | bundle | summary |
| analytics-service | Cross-cutting KPI rollups, projections from event stream, time-series + cohort aggregates, feeds dashboards on the desktop app | bundle | summary |
AI & Theming
| Service | Responsibility | Deep bundle | Catalog summary |
|---|
| ai-orchestrator-service | Single broker for every LLM, embedding, TTS, vision, and moderation call. Vertex AI for cloud, ONNX Runtime Node for edge inference on the Electron desktop. Provenance-tags every output and enforces HITL where action is irreversible or guest-facing | bundle | summary |
| theme-config-service | Tenant theming (logo, color tokens, type ramp), layout presets, content blocks (about, policies, FAQs), RTL/LTR defaults, runtime delivery to web + mobile + desktop surfaces | bundle | summary |
Storage & Integration
| Service | Responsibility | Deep bundle | Catalog summary |
|---|
| file-storage-service | Photos, invoices, ID documents, signed URL issuance, sensitivity tiers, CMEK for ID-doc tier, retention policies per tenant | bundle | summary |
| lock-integration-service | Pluggable lock vendor adapters (TTLock, Salto, Assa Abloy, generic Wiegand / RFID), key lifecycle tied to reservation state machine, vendor-specific failure handling, offline key snapshot for the desktop | bundle | summary |
Search & BFFs
| Service | Responsibility | Deep bundle | Catalog summary |
|---|
| search-aggregation-service | Powers the consumer meta layer; cross-tenant indexing of properties, rooms, prices, availability, amenities; geo + filter + ranking; safe cross-tenant queries with synthetic consumer scope | bundle | summary |
| bff-consumer-service | BFF for the consumer meta web + the consumer mobile app; collapses search-aggregation, pricing, property, and theme calls into a single contract per screen | bundle | summary |
| bff-tenant-booking-service | BFF for the tenant-branded booking flow on web + mobile; serves themed shells, runs the booking saga (reservation + inventory + payment), publishes confirmations | bundle | summary |
| bff-backoffice-service | BFF for the Electron desktop app; owns the `/sync/v1/pull | push` protocol, packages per-aggregate projections for SQLite, brokers AI calls, and gates the device-bound session model | bundle |
Total: 22 services. Each follows the SERVICE_TEMPLATE with 17 canonical docs. See NAMING for service, event, and API conventions, and the enterprise architecture for how the 22 services compose into the platform's three user-facing surfaces (consumer meta, tenant booking, Electron desktop backoffice).