---
schema_version: "1"
id: 5674f32f34ee661bfb1d60c905c20588dd7f7b7f6de5d9d865f5edd3988f4f66
title: Calculate Joint Commissions with Opportunity Splits in Salesforce Spiff
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/sales/264-0-0/spiff_opportunity_splits.md
canonical_url: https://help.salesforce.com/s/articleView?id=sales.spiff_opportunity_splits.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: d5e88a5f7d6a9fb86d3b035331e6e706bf40e20f0e88136636cf108683ffc785
description: When multiple people contribute to closing a deal, opportunity splits help make sure that each person receives credit. In Salesforce Spiff, you can set up commission calculations based on opportunity splits synced from Salesforce. A deal can have multiple splits, and a split type can be revenue, overlay, or a custom type.
products:
  - Sales Cloud
  - Sales Enablement
release: "264"
---
# Calculate Joint Commissions with Opportunity Splits in Salesforce Spiff

When multiple people contribute to closing a deal, opportunity splits help make sure that each person receives credit. In Salesforce Spiff, you can set up commission calculations based on opportunity splits synced from Salesforce. A deal can have multiple splits, and a split type can be revenue, overlay, or a custom type.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: both Salesforce Classic (not available in all orgs) and Lightning Experience</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: <strong>Enterprise</strong>, <strong>Unlimited</strong>, and <strong>Developer</strong> Editions</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available for an additional cost in: <strong>Professional</strong> Edition with Web Services API Enabled</td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:center;vertical-align:top;" id="d34037e76">User Permissions Needed</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d34037e76 ">To create commission calculations:</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d34037e76 ">
              <p>A Spiff <a href="https://help.salesforce.com/s/articleView?id=sales.spiff_users_roles_and_permissions.htm&amp;release=264.0.0&amp;type=5" title="Give users the appropriate level of access so they can be successful in Salesforce Spiff, and enforce the principle of least privilege. Assign a default role to each user, or create custom roles with access to specific Spiff functionality.">user role</a> with this permission turned on.</p>
              <p style="margin-bottom:0;">Designer Configuration: Manage</p>
            </td>

          </tr>
        </tbody>
      </table>

For example, Rep A and B help close a deal. Rep A receives a 50% revenue split and 20% overlay, and Rep B receives a 50% revenue split.

To use opportunity splits in Spiff, sync these Salesforce objects.

- Opportunity, for deals
- Opportunity Split, for a many-to-one relationship with Opportunity
- Opportunity Split Type, for a many-to-one relationship with Opportunity Split
- Opportunity Team, which can be required for some split types

Spiff creates a split record for each owner and type combination, and adds values for these fields.

- Split owner ID
- Percentage
- Split amount
- Split type as an ID

The synced objects and fields have text labels in Salesforce, but Spiff shows an ID against the split record.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-sales-sales_performance_management-264-0-0-production-enus/b1f2feb4-26b8-444f-97f7-be2349869d93/images/icon_note.png)

Note Splits don't always add up to 100%. If the opportunity hasn't been split 100% and the split owner ID is the name as the opportunity's owner ID, Spiff creates one split record.

1. Sync required Salesforce objects.
    
    See [Salesforce Connectors in Salesforce Spiff](https://help.salesforce.com/s/articleView?id=sales.spiff_connector_salesforce.htm&release=264.0.0&type=5 "Sync data from Salesforce objects and fields for use within Salesforce Spiff. Set up connectors for up to five Salesforce orgs, sync data, and manage users between Salesforce and Spiff.").
2. Create a one-to-many relationship for the Spiff Deal object to the Opportunity Split object, such as DealToSplits.
    
    See [Set Up a Data Relationship in Salesforce Spiff](https://help.salesforce.com/s/articleView?id=sales.spiff_relationship_create.htm&release=264.0.0&type=5 "To set up a relationship between two object data tables in Salesforce Spiff, select a field with a common value for both objects."). Select these values for the relationship.
    
    <table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small "><tbody><tr class=""><th style="vertical-align:top;" headers="d34037e188-option" id="d34037e192">Source connector, object, and field</th><td style="vertical-align:top;" headers="d34037e188-desc d34037e192">Select the <strong class="uicontrol">Salesforce</strong> connector, the <strong class="uicontrol">Deal</strong> object, and the <strong class="uicontrol">Opportunity ID</strong> field.</td></tr><tr class=""><th style="vertical-align:top;" headers="d34037e188-option" id="d34037e210">Type</th><td style="vertical-align:top;" headers="d34037e188-desc d34037e210">Select <strong class="uicontrol">Has Many</strong>.</td></tr><tr class=""><th style="vertical-align:top;" headers="d34037e188-option" id="d34037e222">Target connector, object, and field</th><td style="vertical-align:top;" headers="d34037e188-desc d34037e222">Select the <strong class="uicontrol">Salesforce</strong> connector, the <strong class="uicontrol">Opportunity Split</strong> object, and the <strong class="uicontrol">Opportunity ID</strong> field.</td></tr></tbody></table>
3. Create or update a data filter for the split records.
    
    For example, create a BySplitRep filter that returns all records where the rep has a split.
    
    ```
    DealToSplits.SplitOwnerId = rep.Id
    ```
    
    See [Create a Data Filter in Salesforce Spiff](https://help.salesforce.com/s/articleView?id=sales.spiff_data_filter_create.htm&release=264.0.0&type=5 "Create data filters in Salesforce Spiff without writing any code.").
4. Add the splits in your commission calculations.
    
    For example, create a SplitPercentage calculation.
    
    ```
    =sumif(DealToSplits, SplitOwnerId = rep.Id, SplitPercentage) / 100
    ```
    
    Reference this calculation in an ARRValue formula.
    
    ```
    =ARR * SplitPercentage
    ```
    
    And finally calculate the commission amount by multiplying the ARRValue by the commission rate.
    
    ```
    =ARRValue * CommissionRate
    ```
    
    If the ARR is $100 and there aren't any split records, the ARR Value calculation is `100 * 100%`. If there's a 50% split, the same calculation results in `100 * 50%`.

#### See Also

- [Create a Manager Rollup Filter for Opportunity Splits](https://help.salesforce.com/s/articleView?id=sales.spiff_rollup_opportunity_splits.htm&release=264.0.0&type=5 "Opportunity splits occur when two or more people contribute to a deal and the commission is divided among the contributors. In Salesforce Spiff, help managers view opportunity splits with a manager rollup filter.")
- [Administer Opportunity Splits and Opportunity Product Splits](https://help.salesforce.com/s/articleView?id=sales.opp_splits_setup.htm&type=5&language=en_US)