I’m not too familiar with how the transaction events come through. Are you seeing the workflow trigger 3 times using Order transaction created?
If so, you could store them in a metafield or tag each time they happen. And then check the metafield before sending that internal email.
You might also be able to use something like:
- Every day
- Get orders (using the financial_status field for the query)
- For each order:
- Check if it has 3 tries
- If true
- Send email