Workflow Action: Update Opportunity
Overview
The Update Opportunity action in Stack allows you to modify an existing opportunity within your sales pipeline. This action can update either the opportunity that triggered the workflow or an opportunity identified through a preceding Find Opportunity step. If both conditions are met, the opportunity found in the Find Opportunity step takes precedence. If no opportunity is found or present, the action will not execute.
This feature is particularly useful for dynamically adjusting opportunity details, such as changing pipeline stages, renaming opportunities, updating opportunity values, or modifying other fields based on workflow logic.
Action Details
Action Name
Update Opportunity
Action Description
When triggered, the Update Opportunity action applies the specified changes to an existing opportunity. If the workflow was initiated by an opportunity (for example, through an Opportunity Updated trigger), that opportunity will be updated. However, if a Find Opportunity step is present in the workflow, it overrides the triggering opportunity, and the action updates the opportunity found in that step instead.
You can update core fields, such as the opportunity's name, value, pipeline, or stage. You can also choose to allow an opportunity to move backward in the pipeline if needed. If no valid opportunity exists in the workflow context, this action is skipped.
Action Details
| Value Name | Description | Mandatory |
|---|---|---|
| Action Name | A unique label to help you identify this step in your workflow. | Yes |
| Opportunity to Update | If the workflow was triggered by an opportunity, that opportunity will be updated unless a Find Opportunity step exists, in which case the found opportunity is updated instead. | — |
| Allow Opportunity to Move to Any Previous Stage | A toggle that, when enabled, allows the opportunity's pipeline stage to be updated to a stage before its current stage. If disabled, the opportunity can only be moved forward or stay in the same stage in the pipeline. | Yes |
| Fields to Update | Specifies which fields to modify. Examples include: Opportunity Name (e.g., `{{contact.first_name}}`), Opportunity Value (numeric amount), Pipeline or Pipeline Stage (to move the opportunity to a different pipeline or stage). | No (but recommended) |
| Duplicate Opportunity | Visible in the UI, but in the context of Update Opportunity, this toggle does not create a new opportunity. It has no effect on whether a new record is generated. | No |
For any date fields, you can also use custom values like "Right Now" to add the current date and time to an opportunity.
Edge Cases
- No Opportunity in Context: If the workflow was not triggered by an opportunity and there is no Find Opportunity step, this action will be skipped.
- Triggering vs. Found Opportunity: If both a triggering opportunity and a Find Opportunity step exist, the opportunity found in the Find Opportunity step will be updated, not the triggering opportunity.
- Backward Stage Movement: If "Allow Opportunity to Move to Any Previous Stage" is off, attempting to update the stage to an earlier position in the pipeline will have no effect.
- Pipeline or Stage Changes: Updating the pipeline or pipeline stage moves the opportunity to a different part of your sales process dynamically.
Example
Scenario
A workflow is triggered when an opportunity's status is updated. The goal is to rename the opportunity, increase its value, and move it to the "Proposal Sent" stage.
- Trigger: The workflow is triggered when an opportunity status is changed to "Open."
- Action: Find Opportunity
- Filters:
- Opportunity Name contains
{{contact.email}} - Status is "Open."
- Opportunity Name contains
- Filters:
- Action: Update Opportunity
- Action Name: "Refresh Opportunity Info"
- Allow Opportunity to Move to Any Previous Stage: Enabled
- Opportunity Name:
`{{contact.first_name}}` - Updated Project - Opportunity Value: 5000
- Pipeline Stage: "Proposal Sent"
Behavior:
- If an opportunity triggered the workflow and no Find Opportunity step exists, the triggering opportunity is updated.
- If a Find Opportunity step exists, that opportunity is updated instead, overriding the triggering opportunity.
- If no opportunity is found or available in the workflow, the action is skipped.