You are here:
Considerations for Event Processes
These considerations are specific to processes that start when a platform event message is received.
Required Editions
| Available in both Salesforce Classic and Lightning Experience |
| Available in: Performance, Unlimited, Enterprise, and Developer Editions |
After December 31, 2025, existing processes continue to run, and you can activate, deactivate, and edit them; however, we recommend using Flow Builder. To migrate existing processes, plan your switch to Flow Builder and use the Migrate to Flow tool. For new automations, create flows in Flow Builder.
Supported Platform Events
Processes can subscribe to custom platform events and these standard platform events.
- AIPredictionEvent
- BatchApexErrorEvent
- FlowExecutionErrorEvent
- FOStatusChangedEvent
- OrderSummaryCreatedEvent
- OrderSumStatusChangedEvent
- PlatformStatusAlertEvent
Apex Actions
You can’t use an event reference to set an sObject variable in the Apex class.
Email Alerts Actions
Email alerts can’t use values from platform event messages. For the process to send an email that contains values from the platform event message that starts the process, use this workaround.
Flows Actions
You can’t use an event reference to set a record variable in the flow, even when the platform event is specified as the record variable’s object. To pass values into the flow from the platform event message that starts the process, use this workaround.
- In the flow, create a variable for each field in the platform event. Be sure to use compatible data types and make the variables available for input.
- In the process, when you add the Flows action, use event references to assign each platform event field to its corresponding flow variable.
Associating with a Record
Use the process’s matching conditions to find exactly one record. If the process can’t find one record based on your matching conditions—because either it found multiple records or no records—the creator of the process receives an error email. If an error occurs, adjust the conditions in the process’s trigger to be more specific.
Publishing Event Messages
With event processes, we don’t block you from publishing the same event message that starts the process. To avoid creating an endless loop, make sure that the new event message’s field values don’t meet the filter criteria for the associated criteria node.
If a platform event is configured to publish immediately, the process publishes each event message outside of the database transaction. If the transaction fails and is rolled back, the event message is still published and can’t be rolled back. So if you see an informational message under the selected platform event, consider whether you want the process to publish an event message only after the transaction commits successfully.
Subscriptions Related List
On the platform event’s detail page, the Subscriptions related list shows which entities are waiting to receive that platform event’s messages. The related list includes a link to each subscribed process. If flow interviews are waiting for that platform event's messages, one “Process” subscriber appears in the Subscriptions related list.
Packaging
When you package an event process, the associated object isn’t automatically included. Advise your subscribers to create the object or manually add the object to your package. For example, when you package an event process that’s associated with the Participants custom object, manually add the object to your package.
Uninstalling Events
Before you uninstall a package that includes a platform event, deactivate all processes that reference the platform event.
Einstein Predictions
A prediction event is sent for each Einstein prediction result, so use process matching conditions if you want your process to be triggered only by predictions on a specific object. For example, if your process acts only on predictions written to Lead records, add a matching condition to check that the Lead ID field equals the AI Predicted Object ID event reference.
If your process updates a field that is used by an Einstein prediction, Einstein runs the prediction again and writes back the new results. The new results generate a new prediction event that could trigger your process again, resulting in a loop. To avoid creating a process loop, only update fields that aren’t used in Einstein predictions.

