Setting up Revenue Management for Engagements

If you use the engagement functionality, you can generate revenue contracts from engagementClosed Represents a single customer engagement that can include diverse revenue streams. It links together related products for a customer within a given time frame, such as professional services, subscriptions, and goods. records.

Before you can set up Revenue Management for engagements, ensure that you have performed all the required steps detailed in:

  1. Setting up Revenue Management
  2. Additional Setup for using Multiple-Element Arrangements
  3. [Optional] Additional Setup for Recognition Schedules

Perform the following steps to configure Revenue Management for engagements:

  1. Populate the Engagement Lookup field on the relevant primary-level recognition settings records. More information is provided below.
  2. If you did not use the Create Setup for Using Revenue Contracts feature to create recognition settings and templates, manually update the recognition settings record for the Performance Obligation object. To ensure that the engagement is automatically linked to recognition schedule lines, update the following fields:
    • For Recognition Schedule Line Lookups, append ,ffrr__Engagement__c to the existing value.
    • For Parent Relationship Paths, append ,ffrr__RevenueContract__r.ffrr__Engagement__c to the existing value.
  3. Add the Generate Revenue Contract Lightning action to the relevant page layout for the Engagement object.
  4. Add the Generate Revenue Contracts list button to the List View search layout for the Engagement object.
  5. Add the Revenue Contract and Recognition Schedule Lines related lists to the relevant page layout for the Engagement object. If you use the default page layout, you can do this using Feature Console. For more information, see Enabling the Engagement Feature.
  6. Add the Revenue Contract and Recognition Schedule Lines related lists to your custom Lightning record pages for the Engagement object. We recommend creating a new tab named Revenue Recognition. For more information, see Customizing the Engagement Lightning Record Page.

For more information about modifying page layouts, search layouts, and Lightning record pages, see the Salesforce Help.

Once you have performed the setup steps, you can generate revenue contracts from engagements. For more information, see Generating Revenue Contracts for Engagements.

Defining the Engagement Lookup Field on Recognition Settings Records

The Engagement Lookup field defines how a source object is linked to the Engagement object. When generating a revenue contract for an engagement, this enables Revenue Management to retrieve the related source records that have a Use in Revenue Contract templateClosed A recognition template that has the Use in Revenue Contract checkbox enabled. and create performance obligations for them.

The table below lists the Engagement lookups included by default. Depending on the packages installed in your org, some source objects might not be available. For more information, see Engagements.

Default Engagement Lookups

Source Object

Engagement Lookup

Billing Contract ffbc__Engagement__c
Project pse__Engagement__c
Sales Order SCMC__Engagement__c
Notes:
  • You can only populate the Engagement Lookup field for primary-level settings records.
  • You can only provide the API name of a field on the source object. Lookup paths are not supported.

Improve Performance by Identifying Completed Engagements

The Generate Revenue Contracts for All Engagements process runs on all engagements regardless of whether or not they are still being used. Therefore as you create more engagements, the amount of work this process needs to do will continually increase and take longer to run. You can improve its performance by allowing completed engagements to be identified so that they are excluded from the process.

To allow completed engagements to be identified:

  1. In Object Manager, select the Engagement object and add a checkbox field, or a formula field that returns a checkbox. Give the field the following label and name:

    Field Label: Engagement Complete

    Field Name: ffrrEngagementComplete__c

    Note:

    ffrrEngagementComplete__c is the API name that Revenue Management expects for this field. If you use a different API name, you must enter it in the Engagement Complete field in the Revenue Management Settings custom setting.

  2. If you have added a formula field, enter the formula you want to use to set the checkbox to true. For example:

    fferpcore__EndDate__c <= TODAY()

    This sets the checkbox to true if the engagement's end date is earlier than today.

  3. Give the relevant profiles permission to access the field, and add it to the required page layouts, then save the field.
  4. Ensure that your users understand any action they need to take for the Engagement Complete field to be selected. For example, if it is a checkbox field they might need to select the checkbox manually, whereas if it is a formula field they might need to complete another field that is used by the logic that sets the checkbox to true.

When the Generate Revenue Contracts for All Engagements process runs, any engagements where the ffrrEngagementComplete__c field is true are ignored.