I have a process that runs every day in the morning. It is a scheduled class that publishes a platform event. When this event is run by the system, it collects some records and sends emails to some customers.
This was a process that was not using platform events. I decided to use PEs to get "last modified by automated process" instead of "last modified by {user who scheduled the class}".
Since I deployed this feature, I noticed that some merge fields are not working on the emails. In an attempt to search for a common cause, I can tell that both fields are either formula or retrieve information from the parent record directly, like this:
{!relatedTo.Formula__c}
{!relatedTo.ParentObject.StringField__c}
Where the first field is a formula that points to a parent record field, like the second one.
This looks like a permission issue with the user that runs as the system. Anyone with a similar issue?