Baucore

Considerations for Opportunity Management

Conceptadmin

This page covers the critical implementation requirements, default configurations, and upgrade considerations for Opportunity Management — read it alongside Key Concepts of Opportunity Management V2 for the conceptual model, and before rolling out or upgrading Opportunity Management V2 org-wide.

Critical upgrade requirement. After upgrading the package, you must add the values "In Progress" and "Completed" to the ibsbaucore__Status__c field on ibsbaucore__Sync_Task__c. Sync tasks will completely fail if these values are not added immediately after upgrade, which can cause data synchronization issues and disrupt business processes. This step is not performed automatically on upgrade — see below.

Required picklist values after upgrade

ibsbaucore__Sync_Task__c drives Opportunity Management’s background sync processing, and its ibsbaucore__Status__c field must include both of the following values:

  • "In Progress"
  • "Completed"

On a fresh installation, these values are set up automatically. On a package upgrade, they are not — an administrator must add them manually to the picklist immediately after the upgrade completes, before any sync task runs. Skipping this step is the most common cause of Opportunity Management sync failures after an upgrade.

Default mappings to configure after upgrade

Like the picklist values above, none of the following mappings are configured automatically on a package upgrade — only on a fresh installation. An administrator should set each of these deliberately after upgrading.

Project Phase to Role mappings

Initial default mappings for which Opportunity roles are relevant to each Project phase:

Project PhaseOpportunity Roles
DesignArchitect, Building Owner
Implementation PlanningBuilding Owner, Architect
BidGeneral Contractor, Processor
DecisionDistributor

These mappings determine which roles are considered relevant during each project phase, and can be adjusted by administrators at any time.

Roles enabled for automatic Opportunity creation

Automatic Opportunity creation only triggers for a Participant whose Role is in this list — adding a new Participant Role elsewhere doesn’t make it eligible until it’s added here too. The initial default list is:

  • Architect
  • Building Owner
  • Developer
  • Processor
  • Distributor
  • General Contractor

Administrators can modify this list after upgrade.

Opportunity status mappings

Initial default status configuration, and what each mapping means for pipeline reporting:

Status TypeRecommended ValueBusiness Impact
Closed WonClosed WonCustomer selected our product; counts in sales pipeline
Indirect Closed WonClosed WonCustomer selected our product; excluded from pipeline calculations
Closed LostClosed LostCustomer chose another product
CancelledClosed LostThe Participant lost the job to another company

Expected Revenue forecasting

Expected Revenue is a forecasting metric calculated as Amount × Probability %, using each stage’s configured probability percentage. To add it to your forecast measures:

  1. Enable Opportunity Team Selling, then enable Opportunity Team Settings (Setup → Feature Settings → Sales → Opportunities → Opportunity Team Settings).
  2. Enable Opportunity Splits (Setup → Feature Settings → Sales → Opportunities → Opportunity Splits Settings → Set Up Opportunity Splits), add a new split type, and choose Opportunity – Expected Revenue as its field.
  3. Add the new Expected Revenue split type to your Forecast Types.

Salesforce creates two default split types (Revenue and Overlay) automatically, but a custom split type on the Expected Revenue field is required for proper forecasting — Expected Revenue is meant for overall sales forecasting, not individual opportunity tracking.

Sharing and access

Respect Record Access, if enabled, means field-sync actions only update Opportunities the running user can read and edit — Opportunities outside that user’s access are skipped silently, with no error surfaced. If sync results look incomplete for a user, check their access to the Opportunity records in question before assuming the sync itself failed.

What’s excluded from auto-creation

“Our Company” / My Company participants never generate an Opportunity — this exclusion is not configurable per org, it’s a hard rule of the auto-create logic (separate from the Role-based eligibility list above).

Probability behavior is asymmetric

  • Setting Project Probability to 0 propagates 0 to related active Opportunities (if sync is active) — a real value, sent through.
  • Setting Project Probability to Null does the opposite: it disables the sync to related Opportunities rather than propagating a blank. If an Opportunity’s Probability looks “stuck” after a Project field was cleared, this is usually why.

Per-Opportunity overrides exist, and are easy to miss

The donotoverride flag on an individual Opportunity excludes just that one record from Amount sync, while every other related Opportunity keeps syncing normally. If Amount looks wrong on exactly one Opportunity on an otherwise-healthy Project, check this flag before assuming the sync engine is broken.

Lead conversion doesn’t duplicate

Converting a Lead that is also a Participant reuses whichever Opportunity results from the conversion (or the auto-create rule) — it does not create a second, separate Opportunity for the same Account on the same Project.

Post-upgrade verification checklist

After every upgrade, before considering the rollout complete:

  • Confirm "In Progress" and "Completed" are present on ibsbaucore__Status__c (ibsbaucore__Sync_Task__c).
  • Re-verify all Opportunity stage mappings (status mappings and Project-Phase-to-Role mappings above).
  • Test any custom automations that interact with Opportunity Management.

Still need help?

Our support team is happy to help with anything not covered here.

Contact support