Identity
Tenants, users, locale preferences. Zitadel for OIDC, OpenFGA for relationships, OPA for policy decisions.
Modir Wealth OS bundles ten bounded contexts — identity, client, audit, documents, onboarding, portfolio, compliance, trading, case, AI — into a single platform with three-layer authorization, hash-chained audit, and first-class localization.
From the experience layer to governance, every layer is an explicit contract: independently observable, independently scalable, independently versioned.
Each context owns its aggregates and state machines. Cross-context reads go through public services or the typed event registry — never through tangled joins.
Tenants, users, locale preferences. Zitadel for OIDC, OpenFGA for relationships, OPA for policy decisions.
Clients, households, contact points. Aggregate state machine: prospect → active → dormant → closed.
Append-only, hash-chained per tenant. UPDATE/DELETE blocked at the database. Hourly verification.
Carbone → Gotenberg → MinIO. Locale and calendar formatters injected. DocuSeal e-signature.
Nine-state machine. Temporal-durable. Locale-aware questionnaires for sa-ar, ir-fa, us-en.
Accounts, instruments, positions, transactions. TimescaleDB hypertables. TWR (Modified-Dietz) and MWR (IRR).
Rule evaluation via OPA: suitability, restricted_list, aml, concentration, jurisdiction. Cases for breaches.
Eleven-state order machine. Pre-trade OPA checks. FIX gateway with embedded simulator for staging.
Service requests with SLA timers. Auto-escalation up to three levels. Compliance and operations queues.
Five LangGraph use cases. Approval-gated mutations. NeMo Guardrails. OPA. Langfuse traces. LiteLLM gateway.
Five Next.js applications share the same data plane. Roles, locale and calendar follow the user.
The capabilities below typically take 18–24 months to build internally. They are day-zero in Modir.
| Capability | Build it yourself | Modir Wealth OS |
|---|---|---|
| Identity & multi-tenant isolation | Pick OIDC, design RLS, integrate everywhere | Zitadel + OpenFGA + Postgres RLS, day zero |
| Tamper-evident audit | Custom append-only design + verification | Per-tenant SHA-256 hash chain, hourly verified |
| Localization | i18n retrofit, RTL pain, calendar libs | 6 locales, 3 calendars, 3 numerals — first-class |
| Compliance policies | Hard-code or build a policy engine | OPA + Rego: suitability, restricted, AML, concentration, jurisdiction |
| Governed AI | Build guardrails, traces, approval flows | NeMo Guardrails + Langfuse + LiteLLM + OPA ai_actions |
| Document pipeline | DOCX templating, PDF rendering, signing | Carbone + Gotenberg + MinIO + DocuSeal, locale-aware |
| Workflow durability | Build retries, timeouts, signals from scratch | Temporal-backed, ten workflows, search attributes indexed |
| FIX connectivity | QuickFIX/J integration project | Spring Boot + QuickFIX/J 2.3 with embedded simulator |
An architect-led workshop: jurisdictions, integrations, identity model, calendars, deployment topology — output is a costed pilot plan.