Main Workflow Phases
The 8-phase ClientServicingWorkflow — one execution per onboarding case, segment-aware from start to finish.
Table of Contents
11.1 Phase Map
%%{init: {'theme': 'base'}}%%
flowchart TD
classDef startEnd fill:#2d6a4f,stroke:#1b4332,color:#ffffff,font-weight:bold
classDef system fill:#1d3557,stroke:#a8dadc,color:#ffffff
classDef humanTask fill:#e76f51,stroke:#bc4749,color:#ffffff,font-weight:bold
classDef childWf fill:#5c4a8a,stroke:#c77dff,color:#ffffff
classDef gateway fill:#457b9d,stroke:#1d3557,color:#ffffff
classDef complete fill:#1b4332,stroke:#52b788,color:#ffffff,font-weight:bold
Start(["▶ OnboardingRequest received"]):::startEnd
P1["Phase 1 · Initialize Case\nvalidateAndCreateCase\nWrite case record · Set clientSegment"]:::system
G1{"Enterprise\nsegment?"}:::gateway
P2["Phase 2 · Order Approval Gate\n⏳ Signal: submitOrderApproval\nAssigned → Operations Supervisor"]:::humanTask
G2{"Medium or\nEnterprise?"}:::gateway
P3["Phase 3 · Compliance Gate\n↳ Child: ComplianceGateWorkflow\nDoc Review + BSA/AML Attestation"]:::childWf
P4["Phase 4 · Core Data Retrieval\nretrieveCoreData\nCore Banking System lookup"]:::system
P5["Phase 5 · Product Provisioning\n↳ Fan-out: multiple product child workflows\nPromise.allOf() — all must complete"]:::childWf
P6["Phase 6 · Digital Banking Setup\nAnchita Digital Banking Portal\nTier-gated access provisioned for all segments"]:::system
P7["Phase 7 · Credential Delivery\n⏳ Signal: confirmCredentialDelivery\nAssigned → Operations Team"]:::humanTask
P8["Phase 8 · Case Completion\nwriteMetrics · sendNotification\narchiveDocuments · state = COMPLETE"]:::complete
End(["■ Case Complete"]):::startEnd
Start --> P1 --> G1
G1 -- "Yes" --> P2 --> G2
G1 -- "No — skip" --> G2
G2 -- "Yes" --> P3 --> P4
G2 -- "No — skip" --> P4
P4 --> P5 --> P6 --> P7 --> P8 --> End
Node key 🟦 Automated system activity · 🟧 Human task — Temporal signal required · 🟪 Child workflow · 🔷 Segment decision gateway
Phase Breakdown
| Phase | Name | Type | Segment |
|---|---|---|---|
| 1 | Initialize Case | System activity | All |
| 2 | Order Approval Gate | Human task — signal | ENTERPRISE only |
| 3 | Compliance Gate | Child workflow | MEDIUM + ENTERPRISE |
| 4 | Core Data Retrieval | System activity | All |
| 5 | Product Provisioning | Child workflow fan-out | All (products vary by segment) |
| 6 | Digital Banking Setup | System activity | All (tier-gated via Anchita Digital Banking Portal) |
| 7 | Credential Delivery | Human task — signal | All |
| 8 | Case Completion | System activity | All |
Phase Detail
Phase 1 — Initialize Case
Validates the intake request, creates the case record in Aurora with state = OPEN, sets clientSegment (immutable for the case lifetime), and initialises the Playbook stage tracker. The workflow run ID is written to the case record for future signal routing.
Phase 2 — Order Approval Gate (Enterprise only)
Creates a human task assigned to the Operations Supervisor group. The workflow waits indefinitely via submitOrderApproval signal. On REJECTED, the workflow writes a rejection event to audit_events and terminates. On APPROVED, it advances to Phase 3.
Phase 3 — Compliance Gate (Medium + Enterprise)
Delegates to ComplianceGateWorkflow as a child workflow. The parent waits for the child to complete. The child handles Document Review and BSA/AML attestation — both are mandatory human steps. See Compliance Gate.
Phase 4 — Core Data Retrieval
Calls the core-banking-adapter to retrieve the client’s customer profile, existing accounts, and relationship data. Writes enriched company data to Aurora companies table. On failure, routes to error recovery signal.
Phase 5 — Product Provisioning
The ProductProvisioningOrchestrator fans out to N child workflows — one per selected product — all running concurrently via Promise.allOf(). Only products available to the case’s segment are started. All must complete before Phase 6 begins. See Product Provisioning Fan-Out.
Phase 6 — Digital Banking Setup
Provisions user access to the Anchita Digital Banking Portal via the anchita-portal-adapter. All segments access the same portal; the portal enforces tier-based feature gating at runtime using the clientSegment value written to the case record in Phase 1:
SMALLandMEDIUM→ Standard tier — account dashboard, payment initiation, transaction history, BAI2 reportingENTERPRISE→ Enterprise tier — all Standard features plus instant payments, multi-entity hierarchy views, FX rate dashboards, and advanced liquidity management tools
This activity establishes the digital channel relationship and provisions the initial user set as configured during onboarding.
Phase 7 — Credential Delivery
Creates a human task assigned to the Operations Team. The operator delivers credentials to the client (via secure email or physical delivery) and confirms via submitCredentialDeliveryConfirm signal. On confirmation, advances to Phase 8.
Phase 8 — Case Completion
Writes final metrics to Aurora (for the Executive Dashboard), sends completion notifications (email, push), archives documents to S3 cold storage tier, and sets state = COMPLETE. The workflow execution ends cleanly — Temporal closes the execution record.