SMTP App Overview
SMTP application is responsible for sending emails and messages to customers. It is connected to the Saleor API via webhooks, which notify the application about the events. The messages are delivered by the SMTP protocol configured in the application.
Features
App allows to
- Configure the SMTP protocol that will be used to send emails
- Create email templates using MJML and Handlebars. Additionally you can use handlebars-helpers features
- Preview email templates with built-in renderer
Supported events
Account confirmation
A message containing an account activation token after registration. To activate the account, your storefront should perform an API call according to the documentation.
If you don't want to use the email confirmation, you can disable it in the Saleor dashboard:
- Open the Saleor dashboard
- Navigate to the Configuration page
- Click on the Site settings card
- Update the
User registration
form
The event has been implemented using the NOTIFY_USER
webhook.
Account password reset
Message sent after requesting a password change. The payload contains a token that has to be attached to the request to the Saleor API to change the password. To implement a storefront interface for password change, follow the documentation.
The event has been implemented using the NOTIFY_USER
webhook.
Account password reset for staff-created accounts
As in the previous event, but for accounts created by Staff users in the Saleor Dashboard.
The event has been implemented using the NOTIFY_USER
webhook.
Account email address change
Message sent on the email address change request. Follow the documentation for more details.
The event has been implemented using the NOTIFY_USER
webhook.
Account email change confirmation
Confirmation is sent to the new address after following instructions from the previous message.
The event has been implemented using the NOTIFY_USER
webhook.
Account deletion request
A message with a token that's used for account deletion. To implement a storefront interface for account deletion, follow the documentation.
The event has been implemented using the NOTIFY_USER
webhook.
Invoice sent
The event is triggered when the Staff users use the Sent invoice
action. The message contains a link to the invoice.
The event has been implemented using the INVOICE_SENT
webhook.
Order confirmation
Sends a message when the order is confirmed.
The event has been implemented using the ORDER_CONFIRMED
webhook.
Order has been fulfilled
Sends a message when the order status is changed to FULFILLED
.
The event has been implemented using the ORDER_FULFILLED
webhook.
Order has been fully paid
Sends a message when the order is fully paid.
The event has been implemented using the ORDER_FULLY_PAID
webhook.
Order has been canceled
Sends a message when the order is canceled.
The event has been implemented using the ORDER_CANCELLED
webhook.
Sent gift card
Sends a message when the gift card is sent to the customer.
The event has been implemented using the GIFT_CARD_SENT
webhook.
Configuration
The application can use multiple configurations at the same time. This way, you'll be able to:
- create test configurations before using them in production
- use different configurations for different events
- use different configurations for different channels
Multichannel
Each configuration can be configured to work with specific channels. The configurations are used for all the channels by default. It can be changed in the configuration details to:
- use only the specific channels
- use all channels except the specific ones
Development
To run the application locally, follow the documentation.
Known limitations and issues
- When the application has multiple active configurations and one of them fails, it may result in duplicated email deliveries. Issue link
- Emails use the default language of the Saleor instance. Using translations is not supported yet. Issue link
- The order refunded event is not supported yet. Issue link
- The fulfillment updated event is not supported yet. Issue link
- Your SMTP server must respond in a maximum 4 seconds. Otherwise, the application returns the timeout and your email will not be sent.
Migration from Emails and Messages app
SMTP app has been extracted from the Emails and Messages app. If you have been using the Emails and Messages app, you can migrate to the SMTP app by following the steps below:
- Install the SMTP app from the App Store.
- Configure the SMTP app with the same settings as the Emails and Messages
- Enable SMTP configuration only for a test channel first.
- Check if the SMTP app works correctly by sending test emails
- Enable SMTP app for all channels
- Uninstall the Emails and Messages app