Firmhouse supports a fair range of (mostly transactional) emails out of the box. While it's great to have all these flows enabled for better customer communication, not everyone wants to support all the flows. To this extent, most Firmhouse emails have the option to be disabled via a toggle, while others are marked as mandatory and therefore can't be disabled via the UI.
So what happens when we want to disable an email flow that might otherwise be mandatory to keep? Or how can we conditionally send emails to clients meeting certain contains? Let's dive in into some examples and the email skipping solution!
In some cases, we might want to prevent Firmhouse emails from being sent. For example:
For a client's first subscription order, we don't want to send a subscription signup confirmation email alongside the order confirmation email.
We don't want to send upcoming order emails to clients with paused subscriptions.
We don't want to send upcoming order emails to subscribers that don’t meet the required minimum order value.
In cases like these, we can insert [SKIP_EMAIL]
in the email body and the email "send" event won’t get triggered.
We can also use conditional insertion of the [SKIP_EMAIL]
tag for more complex uses, for example not sending an email to paused subscribers:
{% if subscription.status == "paused" %} [SKIP_EMAIL] {% endif %}
Another use case is to skip sending the upcoming order email for those subscribers that don't meet the minimum order amount:
{% if order.minimum_order_amount_reached? %} [SKIP_EMAIL] {% endif %}
Depending on the case, these conditions can be combined and other ones can be created. You can consult the List of possible dynamic (Liquid) tags to explore which attributes can be used for creating the conditional logic.