Enterprise Approvals Integration - Salesforce Process

Power up your advanced approval processes in Salesforce using the native Salesforce Integration within Moveworks. Salesforce enables Approvals on Opportunities that were set up through the Approval Process and enables workflows based on approval groups and chains. Moveworks will be able to enable all Approvals based on the ProcessInstanceWorkitems received from the API response.


The following capabilities will be supported for this experience:

Advanced Approvals on Approvals Process

  • Easily access and view all your pending Opportunity Approvals within the bot interface. Obtain all the necessary information related to an approval without leaving the bot.
  • Take action on approvals (approve or deny) directly through the bot without the need to visit the salesforce platform.
  • Easily redirect to the exact approval on salesforce by clicking on View in salesforce
  • Group, Single and Chain Approvals - Our bot natively supports your group, single and chained approval process setup.
  • Approver Reassignment Notification - Our bot will automatically notify the new approver if an approval was re-assigned to another user

The information on an approval card is currently not configurable and will require further discovery and backend code-level updates to add new fields.

Architecture Diagram

To walk through the diagram above:

  1. Approval Detection Server - checks for updated approvals in salesforce every 60s
  2. Approval Processor - get details for approval notifications where appropriate
    1. Approval processor filters out approval updates that do not result in notifications
    2. Approval processor fetches details for the notification from resource-specific endpoints
  3. Approval Queue - if qualified, the approval is stored in the Moveworks approval queue for the next 30 days. You can read more about the Approval Queue in the General Enterprise Approvals handbook.
  4. Conversation Engine - notifies the user & collects their response.
    1. Prepares a notification based on the results from the approval processor
    2. Applies the button action associated with the approval resource type (as defined above)


How does approval detection work?

A: Moveworks checks for approvals every 60 seconds, with a 60 second look-back period. This means that at 12:02PM, we will check for approvals that were created between 12:00PM and 12:01PM.

We designed our pollers this way because systems of record will often automatically approve dozens of approvals ~30-45 seconds after they're created (based on different business rules your organization has set up). This avoids noisy notifications on approvals that aren’t actually needed.

What is the Approval Queue?

A: See our Enterprise Approvals Overview for more in-depth details on the Approval Queue.

Generally, Moveworks synchronizes approval records from all your systems and stores them in our Approvals Queue.

This provides many benefits:

  1. Employees don't get frustrated waiting tens of seconds for your systems to return necessary data (chat feels ~56x faster on average)
  2. We don't overburden your system health with calls for every single user
  3. Once an approval is in the queue, we offer some additional powerful interaction patterns for the user.


Note: Approvals are removed from the approval queue if not updated in the last 30 days, or after they’ve been completed (approved, denied, or no longer required).

What if I’m seeing approvals that do not belong?

A: Generally, users will not see approvals >30 days old.

There is a small risk that our approval queue may be slightly inconsistent with production (<1% of the time). Examples of these inconsistencies may include a missing approval or an approval that was already completed. We are actively making engineering investments to reduce the likelihood these appear.

If any inconsistencies are detected, please let us know and we can manually fix them with an internal tool.