SfSkills Domains Docs GitHub

Home / architect / wealth-management-architecture

wealth-management-architecture

Use this skill when designing or reviewing a Salesforce Financial Services Cloud (FSC) wealth management platform — covering advisor workspace configuration, client portal setup, portfolio data integration, Compliant Data Sharing, and FSC feature enablement decisions. NOT for the org-wide FSC data-model choice (managed-package vs platform-native) — use architect/fsc-architecture-patterns. NOT for gathering wealth management requirements before design — use admin/wealth-management-requirements.

Open the skill folder on GitHub


Wealth Management Architecture

Use this skill when designing, implementing, or reviewing a Financial Services Cloud (FSC) wealth management platform. It covers the full platform layer: FSC feature flag enablement, Compliant Data Sharing setup, custodian-to-FSC data integration patterns, advisor workspace configuration, and licensing verification for the Scoring Framework.


Before Starting

Gather this context before working on anything in this domain:


Core Concepts

FSC Feature Enablement via IndustriesSettings Metadata

FSC wealth management capabilities are gated behind discrete metadata flags in the IndustriesSettings settings type. The three most impactful for wealth management platforms are:

Custodian Integration Pattern Selection

Portfolio data from external custodians (Schwab, Fidelity, Pershing, etc.) flows into FSC through one of two patterns defined in the Salesforce Integration Patterns Guide:

Scoring Framework and License Dependency

The FSC Scoring Framework powers the advisor analytics dashboards that display client health scores, engagement scores, and referral opportunity scores. A critical licensing dependency applies: the Scoring Framework requires the CRM Plus license in addition to the standard FSC product CRM license. Orgs that purchased base FSC without CRM Plus will not see the scoring configuration UI, and any Flow or Apex that references the scoring objects will fail with object-not-found errors at deployment time. Verify licensing in the subscriber org before scoping any analytics work that depends on scoring.

Compliant Data Sharing Per-Object Architecture

Compliant Data Sharing (CDS) is FSC's mechanism for enforcing regulatory data access controls — it ensures an advisor only sees the client records they are authorized to access. The architecture implication is that CDS is not a toggle on the FSC product but a per-object configuration layer. Each object type that requires segmentation must be explicitly enrolled. The enrollment triggers the creation of a shadow access-control table for that object. Critically: if records exist before CDS enrollment, those records have no sharing entries, meaning advisors may see no data after activation. The implementation sequence must be: enable CDS on the object type, then run the sharing recalculation batch, then activate advisor access.


Common Patterns

Pattern: Nightly Custodian Batch Sync (Bulk API 2.0)

When to use: Custodian provides a nightly data export of portfolio positions, transactions, and account balances. Dataset is large (100K–5M records per feed).

How it works:

  1. Custodian drops delimited file to SFTP or S3.
  2. ETL job transforms to Bulk API 2.0-compatible JSON/CSV payload.
  3. Create ingest job via POST /services/data/v63.0/jobs/ingest/ with object: FinServ__FinancialAccountTransaction__c.
  4. Upload batches (max 150 MB per upload). Close the job.
  5. Poll job state until jobComplete. Handle Failed rows with a dead-letter queue.
  6. After successful completion, trigger async recalculation of FSC rollup fields (Net Worth, Total Assets) via a scheduled Apex job or Platform Event.

Why not the alternative: Using the REST Composite API for large custodian feeds causes CPU and DML limit breaches. Bulk API 2.0 is the purpose-built path for high-volume record ingestion.

Pattern: Real-Time Trade Confirmation via Remote Call-In

When to use: Custodian sends same-day trade confirmations or intraday price updates for premium client portfolios requiring live dashboard data.

How it works:

  1. Register custodian system as a Connected App with JWT Bearer OAuth grant.
  2. Custodian POSTs trade confirmation to FSC Integrations API endpoint.
  3. FSC creates FinServ__FinancialAccountTransaction__c record and triggers the relevant rollup rule.
  4. Advisor workspace refreshes via Lightning Data Service wire adapter.

Why not the alternative: Queuing real-time events into the nightly batch introduces a 12–24 hour data lag, which is unacceptable for high-net-worth client portfolios where same-day position accuracy is a regulatory expectation.


Decision Guidance

SituationRecommended ApproachReason
Custodian feed is nightly, volume > 50K recordsBatch Data Synchronization via Bulk API 2.0Avoids DML limits; handles large volumes asynchronously
Real-time trade events, volume < 1K/dayRemote Call-In via FSC Integrations APISynchronous path for low-volume time-critical events
Regulatory data segmentation required per advisorCompliant Data Sharing per object typePurpose-built FSC access control; do not use manual sharing rules as a substitute
AI portfolio insights needed in advisor workspaceEnable enableWealthManagementAIPref via IndustriesSettings (API v63.0+)Gate is off by default; must be explicitly deployed
Analytics dashboards with scoring requiredVerify CRM Plus license present before scopingScoring Framework objects not available in base FSC
Deal pipeline tracking neededEnable enableDealManagement in IndustriesSettingsExposes Interaction-to-Deal junction objects

Step-by-step instructions for an AI agent or practitioner working on this task:

  1. Verify licensing and edition — Confirm the org has the FSC product CRM license. Check whether CRM Plus is present for Scoring Framework requirements. Pull the list from Setup > Company Information > User Licenses. Flag any gap before any scoping conversation.
  2. Audit required IndustriesSettings flags — Check which of enableWealthManagementAIPref, enableDealManagement, and Compliant Data Sharing flags are required by the project spec. Retrieve the current IndustriesSettings metadata to see what is already enabled. Plan a Metadata API deployment for each flag that needs to change.
  3. Design Compliant Data Sharing enrollment sequence — For each object type that needs CDS (Account, Opportunity, Interaction, Interaction Summary, custom), determine if records already exist. If they do, plan the sharing recalculation batch as a post-activation step. Document the object enrollment order to avoid dependency failures.
  4. Select and design custodian integration pattern — Confirm custodian data volume and update cadence. Map each feed to either Batch Data Synchronization (Bulk API 2.0) or Remote Call-In (FSC Integrations API). Define error handling: dead-letter queues for bulk failures, retry logic for Remote Call-In timeouts. Document the ETL transformation layer requirements.
  5. Configure advisor workspace and client portal surfaces — Map required FSC standard components (Financial Account list, Net Worth tile, Interaction timeline) to advisor workspace page layouts. Confirm which components require Deal Management or AI preferences to be enabled. Validate Experience Cloud permissions if a client-facing portal is in scope.
  6. Validate rollup and scoring configuration — Confirm FSC rollup rules are active for Net Worth, Total Assets, and Total Liabilities. If Scoring Framework is in scope, deploy scoring configuration objects and validate they appear in Setup. Run a test scoring calculation against a sandbox portfolio.
  7. Review data sharing posture before go-live — Run the Compliant Data Sharing verification report for each enrolled object type. Confirm advisors can only see their assigned client records. Test cross-advisor record access to verify segmentation is working.

Review Checklist

Run through these before marking work in this area complete:


Salesforce-Specific Gotchas

Non-obvious platform behaviors that cause real production problems:

  1. Scoring Framework silent failure on base FSC — When Scoring Framework objects are not available due to missing CRM Plus license, deployments that reference those objects silently succeed but the components render blank in the UI. There is no deployment error. Teams discover the problem only when advisors report empty score tiles.
  2. Compliant Data Sharing activation data gap — Enabling CDS on an object type does not retroactively create sharing entries for existing records. Existing records become invisible to all advisors until the sharing recalculation batch completes. Activating CDS on Account in production without running the batch immediately causes every advisor to see zero client accounts.
  3. enableWealthManagementAIPref requires API v63.0 minimum — Attempting to deploy or retrieve this flag via an earlier API version results in an unknown-field error that does not clearly identify the version mismatch. Orgs on Winter '25 or earlier cannot use this flag.

Output Artifacts

ArtifactDescription
FSC Feature Enablement ChecklistList of IndustriesSettings flags, their current state, and deployment plan
Compliant Data Sharing Configuration PlanPer-object enrollment sequence, sharing recalculation steps, rollback plan
Custodian Integration DesignIntegration pattern selection, ETL transformation spec, error handling approach
Advisor Analytics Licensing ReportLicense verification output mapping features to required license types

Package files