If your Flow doesn't send an email or the invoice is missing as an attachment, one of the following causes is usually responsible. Check them in order.
The Flow is not active or a second Flow conflicts with it
You can find your Flows in the Shopware Admin under Settings → Shop → Flow Builder. A Flow only takes effect if it is active. After you activate it, it only applies to future orders, not retroactively.
If two Flows react to the same order, each one only checks its own conditions: if one stops the invoice, the other can still create one. For this reason, put all conditions, for example for invoice creation, into one Flow and branch it using a rule instead of creating several parallel Flows.
The invoice doesn't exist yet when the Flow is triggered
A Flow can't attach a document that hasn't been created yet. If another Flow only creates the invoice after the email has been sent, it will be missing from the email. Here's how to fix this:
Create the invoice in the same Flow and add the Send email action afterwards
Or create the invoice at an earlier trigger, for example when the status changes to In progress
Creating and sending must use the same document type. If you create a regular invoice but attach Invoice – ZUGFeRD in the email, the invoice will be missing from the email.
The email template has no translation for the order language
For orders in other languages, Shopware uses the translation of the email template in the order language. If it is empty, sending fails. For this reason, fill in every language variant you use in the email template.
The order was not shipped via Pickware
The shipping trigger only takes effect if the order is shipped via the WMS App or via the Ship order button.
Emails for POS orders
For emails for orders from Pickware POS, use the status change to Completed (Order closed) as the trigger. As a condition, checking for the POS Sales Channel is usually enough.
How to check whether your Flow is triggered at all
Shopware does not log when a Flow was executed. To check whether your Flow is triggered, temporarily add an additional action that sets a tag on the order. If the tag is on the order after the trigger, the Flow has been triggered.
