No checkout notifications are sent when the Order Status Condition is set to Pending. I believe this is because the top predicate is the one that changes the Order Status to Payment Received. Which I believe occurs immediately after a regular PayPal payment is made.
Therefore any predicates below the first one attempting to be triggered by a payment status of pending will not fire.
The current order flow seems to be:
- payment entered into PayPal
- order status updated to Payment Received
- checkout notifications triggered
- order status updated to completed
- any necessary roles notifications are sent
- any necessary roles are granted.
In my testing, I have turned off PayPal Website Payments Pro and only one notification is being sent. However when a user clicks the Return to Store button after a PayPal payment is completed, the notifications are re-sent. Trying to figure out what to do about this now.
Note*: It has come to my attention that the multiple emails being sent regarding roles was due to product kit roles. I have two roles but was trying to only send notification to the user for one of those roles. I thought adding a conditional action requiring one of the roles to be present would be enough to only send one email.
Turns out I needed to set up a conditional action to negate all other roles being sent email notification for that predicate. So I apologize for grouping that particular issue with the current one as I thought they were related.