Static, siloed data makes it challenging for financial services organizations and their client relationship managers to accurately, and efficiently develop their annual account plans. Business Relationship Plan (BRP) in Agentforce Financial Services provides a robust data model for continuous account planning, replacing static annual planning cycles. With BRP, organizations can track goals in real time and make faster decisions throughout the year.

Whether adapting to regulatory shifts or launching new products, account teams can use BRP to implement fresh metrics in minutes, surfacing real-time, actionable insights for every client relationship manager. In addition, BRP supports organizational agility by shifting logic ownership from engineering tickets to a simpler admin configuration. Clear extension points enable developers to customize BRP further using Flow, Apex, or Lightning web components.

In this blog post, we’ll walk through the BRP architecture and the core data model. We’ll then demonstrate how admins can configure BRP , and how business users can set up and use the system. Finally, we’ll explore how to extend BRP using Apex business logic and document generation.

What Business Relationship Plan is (and why it matters)

Business Relationship Plan is the layer in Agentforce Financial Services that sits on top of the AccountPlan object in Salesforce. It gives organizations a structure for plan records, objectives, measures, and tasks, and it allows them to extend this model with Flow, Apex, and UI components.

At a high level, BRP connects:

  • Plan: Account-level strategy record
  • Objectives: Prioritized outcomes with owners
  • Measures: Key performance indicators (KPIs) and targets
  • Action Plan: Action items tied to objectives
  • Visibility: Progress tracking across accounts

When we enable Einstein features, we can also add interaction summaries for better context before meetings.

Account Plans vs. BRP: What to use when

While Account Plans serve standard, linear management needs, Business Relationship Plan delivers a highly extensible architecture specifically engineered for sophisticated, multi-outcome strategies and deep platform integration.

Topic Account Plans Business Relationship Plans
Standard objects Yes Yes
Strategic Tracker component Yes Yes
Flexcard Selector component for 360 Information No Yes
Objectives component with measures Yes (1:1) Yes (1:N)
Einstein summary No Yes
Action Plans integration Limited  Yes
Omniscript support No Yes
OOTB prompt templates No Yes

Business Relationship Plan architecture at a glance

The architecture of Business Relationship Plan spans four layers: Data (Plan, Objective, Measure records), Experience (Lightning pages and Flexcards), Orchestration (Flow, Apex, Omniscript), and Insight (Einstein summaries and analytics). 

  1.   Data layer: Plan, Objective, Measure, and Task records with standard and custom fields
  2.   Experience layer: Lightning pages, Flexcards, and Strategic Tracker components
  3.   Orchestration layer: Flow, Omniscript, and Apex automation
  4.   Insight layer: Einstein summaries and dashboard analytics

The diagram below shows how data flows between BRP’s four layers and their components: the Data layer with sObjects, the Experience layer with Lightning components, the Orchestration layer with Flow and Apex, and the Insight layer with Einstein and dashboards.

Architecture diagram showing BRP’s four layers

BRP data model: Core objects and relationships

Business Relationship Plan offers a technical structure for Account Plan records, objectives, measures, and action plans, connecting client account goals directly to Financial Deal, Opportunities, Cases, and Contacts within the Salesforce data model.

Diagram showing the components of the BRP architecture

Core objects

While each of the Account Plan entities contains numerous fields, we’ll focus here on the fundamental fields that are essential across all entities to help you understand the core data structure.

AccountPlan: The root planning object.

  • Standard fields: Name, AccountId, Status, StartDate, EndDate
  • Key relationships: Account (lookup), Owner (lookup)

AccountPlanObjectiveCategory: Categories for classifying objectives.

  • Standard fields: Name, Description, StartDate, EndDate, IsActive

AccountPlanObjective: Strategic goals within a plan.

  • Standard fields: Name, AccountPlanId, Priority, Status, Owner, StartDate, EndDate, Description
  • Key relationships: AccountPlan (master-detail), Owner (lookup), AccountPlanObjCategory (lookup)

AccountPlanObjectiveMeasure: Quantifiable KPIs tracking objective progress.

  • Standard fields: Name, AccountPlanObjectiveId, ValueType, TargetValue, CurrentValue
  • Key relationships: AccountPlanObjective (master-detail), AccountPlanObjMeasCalcDef (lookup)

AccountPlanObjectiveMeasureRela: Links measures to related records.

  • Standard fields: Name, AccountPlanObjectiveMeasureId, ReferenceRecordId
  • Key relationships: AccountPlanObjectiveMeasure (master-detail), ReferenceRecord (multi-lookup to Opportunity, Financial Deal, Case, Contact, Campaign, etc.)

ActionPlan: Structured task-based execution plans.

  • Standard fields: Name, ActionPlanType, StartDate, EndDate
  • Key relationships: Target (multi-lookup)

ActionPlanItem: Individual tasks within an action plan.

  • Standard fields: Name, ActionPlanId, IsRequired, DisplayOrder, DependencyStatus
  • Key relationships: ActionPlan (master-detail), ActionPlanItem (multi-lookup)

Task: Action items tied to objectives.

  • Standard fields: Subject, Status, Priority, Due Date, Assigned To
  • Key relationships: What (lookup to Objective)

Sample SOQL query

The query below retrieves active plans with nested objectives and measures, which is useful for building custom dashboards.

Calculation definitions in Business Relationship Plan

A Calculation Definition is a core configuration record in BRP that defines the logic for platform-led aggregations. It establishes a technical framework with three fundamental pillars:

  • Target object: Identify the specific record type for data aggregation
  • Target field: Specify the numeric or currency value to be rolled up
  • Rollup type: Define the mathematical operation (Sum, Count, Min, or Max)

Furthermore, users can implement conditional logic to filter the underlying data set, ensuring that only qualifying records contribute to the final metric. Once this setup is complete, client relationship managers can leverage these definitions across multiple Account Plan measures without writing a single line of code.

Summary of roles

Process Step Owner Key Outcome
Define logic Admin Reusable Calculation Definition
Activation Admin Availability in Measure UI
Plan setup User Strategic measure creation
Data mapping User Associated related records
Orchestration Platform Automated nightly rollups

This collaborative framework ensures that while admins govern the formula, the platform manages the data, and users focus on results. That is the power of Calculation Definitions.

Let’s now take a look at the steps an admin would take to set up calculation definitions in Agentforce Financial Services. Once set up, we’ll then look at how a business user would use the system.

The admin experience: Configuring the engine

The initial setup phase creates a reusable asset for the entire organization. Once published, these definitions become standard options for all team members during measure creation. 

As an admin, you would follow these steps to configure BRP.

Step 1: Access configuration

Navigate to Setup -> Sales Account Plans and you will see the calculation definition section. You will see both out-of-the-box (OOTB) logic and custom configurations tailored to your specific business requirements.

Screenshot of the Configure Plans for Financial Services start screen

Step 2: Define the data parameters

Click on New Calculation Definition and populate the following essential fields:

  • Identity: Assign a Name and unique API Name for the definition
  • Context: Provide a clear description, so end users understand what the metric represents
  • Source: Select the Target Object (e.g., Financial Deal) and the corresponding Target Field
  • Logic: Choose the Rollup Type; the platform automatically infers the data type from your field selection

Screenshot of the New Calculation Definition dialog box showing rollup criteria

Step 3: Implement conditional filters

Admins can apply up to five conditions to refine the calculation scope. For example, you might exclude records where the status is “Inactive” or filter by specific transaction thresholds to ensure metric accuracy.

Screenshot of the New Calculation Definition dialog box showing conditional filters

Step 4: Lifecycle Management

New definitions begin in Draft mode for review. Transitioning to Active status locks the core configuration to prevent unintended changes to live metrics, ensuring consistency across quarterly planning cycles.

Screenshot showing button to activate the calculation definition

The business user experience: Operationalizing strategy

Once activated, these technical definitions are handed off to client relationship managers to drive daily business outcomes.

Business users would follow these steps:

Step 1: Establish the plan hierarchy

Users begin by creating an Account Plan and defining high-level Objectives, such as increasing portfolio retention or growing fee income.

Step 2: Link measures to logic

For each Objective, the user adds a measure. They define the name and target value, then select the appropriate calculation definition from the dropdown to assign the aggregation logic.

Step 3: Associate records 

The user manually associates relevant records (e.g., Financial Deals) using the AccountPlanObjectiveMeasureRela records. This flexible mapping allows single records to contribute to multiple plans without limit.

Step 4: Automate orchestration

The platform executes a nightly scheduled job that processes these associations, applies admin-defined conditions, and updates the Current Value field automatically, ensuring that fresh data is available every morning.

Architecting for performance: The daily cadence

Agentforce Financial Services utilizes a batch approach for these calculations to maintain optimal system performance. This design ensures that today’s updates to deals or record associations are consistently reflected in the next day’s planning metrics without creating unnecessary overhead.

Workflow example: Tracking Q3 deal revenue

Consider a scenario where a financial advisor tracks transaction revenue for a high-net-worth client.

Phase 1: Admin configuration

  1. Admin creates an “Active Deal Transaction Value” definition targeting the Financial Deal object.
  2. Logic is set to Sum the transaction field with a filter for active status.

Phase 2: Execution

  1. Monday: The advisor sets up the Account Plan and links eight deals to a new measure.
  2. Tuesday: The system reflects a $1.45M current value automatically.
  3. Quarter-End: As new deals close and are associated, the platform tracks the revenue growth until the $2M goal is surpassed.

Extend Business Relationship Plan with Apex

For complex business logic, developers can use Apex to extend BRP functionality. This allows you to implement sophisticated patterns beyond Flow capabilities, such as a nightly scheduled job that computes weighted health scores (on a 0–100 scale) for objectives by analyzing progress from baseline to target. Such automation can programmatically refresh status labels like On Track, At Risk, or Off Track, while utilizing batchable Apex to maintain performance for large-scale deployments exceeding 2,000 records.

Prerequisites

Before implementing Apex extensions for BRP, ensure that your org meets these requirements:

  • Salesforce Edition: Enterprise Edition or higher
  • Financial Services Cloud license: Active FSC license
  • Agentforce Financial Services: Enabled in org settings
  • Permission sets: AccountPlan object permissions (Read, Create, Edit) assigned to users
  • Omnistudio runtime: Enabled for Flexcards and Omniscript functionality
  • Custom field access: Ability to create custom fields on AccountPlanObjective and AccountPlanObjectiveMeasure objects

The following example shows how to customize BRP to track objective health scores.

Example: Calculate objective health score

To prepare your organization for the Apex calculation, create these custom fields:

  • On AccountPlanObjectiveMeasure:
    • BaselineValue__c (Text, 255): Stores the starting value for progress calculation
    • Weight__c (Number, 5,2): Defines the relative importance (weight) of the measure in the objective’s health score
  • On AccountPlanObjective:
    • HealthScore__c (Number, 5,2): Stores the calculated weighted health score (0–100)
    • Status picklist update: To use the determineHealthStatus method, add the values On Track, At Risk, and Off Track to the AccountPlanObjective.Status picklist
  • ⚠️ Crucial Data Note: Ensure that the ValueType field (Number, Currency, or Percent) is set on AccountPlanObjectiveMeasure records before TargetValue and CurrentValue can be persisted.

Usage: Call this class from a scheduled Apex job to recalculate health scores nightly.

Schedule with: System.schedule('BRP Health Score Calculator', '0 0 2 * * ?', new BRPHealthScoreScheduler());.

Note: For orgs with more than 2,000 active objectives, refactor this into a Database.Batchable class with a batch size of 200. The calculateHealthScores method already accepts a Set<Id>, so the batchable execute() method can pass each batch directly.

Extend Business Relationship Plan with Document Generation

Salesforce Document Generation enables organizations to automatically create Word documents and PowerPoint presentations from Account Plan data. By placing the Summary Documents component on the Account Plan record page, developers can allow users to generate documents on-demand from pre-built templates with merge fields and conditional logic. Generated documents pull live data (objectives, measures, activities, related records) and are stored in Salesforce, where they can be:

  • Exported: Download as native .docx/.pptx formats or convert to PDF
  • Shared: Email as attachments or share via public/private links
  • Printed: Download and print for client meetings or internal reviews
  • Archived: Store for compliance and audit trails

This simple extension adds a lot of value and can be used for executive summaries, quarterly business reviews, and stakeholder presentations.

Best practices for developers

  • Review existing OOTB capabilities first: Before building custom components, check available features like Flexcard Selector, Objectives Component, Action Plans, and Summary Documents for complete out-of-the-box functionality to avoid duplicate development
  • Keep objective definitions specific and time-bound: Use validation rules to enforce date ranges and clear naming conventions
  • Limit KPIs to meaningful indicators: Avoid measure proliferation; focus on three to five key measures per objective
  • Build automation for repetitive tasks: Use Flow for measure reminders and status updates

Conclusion

When essential account data is static and siloed, annual account planning becomes more challenging and can easily fail.Business Relationship Plan gives financial services organizations a technical and operational model that they can run every week. With the right data model, UI, and automation, account teams can track goals in real time, act faster, and be more productive.

For developers, BRP provides a solid foundation with clear extension points. Whether you’re building Flow automation, Apex business logic, or custom LWC components, the platform supports continuous planning workflows that replace static annual planning cycles.

Resources

About the author

Vignesh Damodharan is a Lead Member of Technical Staff with Agentforce Financial Services, where he leads Salesforce engineering teams building enterprise products on the Salesforce Platform. Follow him on LinkedIn.