E-Mails¶
Sylius is sending various e-mails and this chapter is a reference about all of them. Continue reading to learn what e-mails are sent, when and how to customize the templates. To understand how e-mail sending works internally, please refer to SyliusMailerBundle documentation. And to learn more about mailer services configuration, read the dedicated cookbook.
User Confirmation¶
Every time a customer registers via the registration form, a user registration e-mail is sent to them.
Code: user_registration
The default template: @SyliusShop/Email/userRegistration.html.twig
You also have the following parameters available:
user
: Instance of the user modelchannel
: Currently used channellocaleCode
: Currently used locale code
Email Verification¶
When a customer registers via the registration form, besides the User Confirmation an Email Verification is sent.
Code: verification_token
The default template: @SyliusShop/Email/verification.html.twig
You also have the following parameters available:
user
: Instance of the user modelchannel
: Currently used channellocaleCode
: Currently used locale code
Password Reset¶
This e-mail is used when the user requests to reset their password in the login form.
Code: reset_password_token
The default template: @SyliusShop/Email/passwordReset.html.twig
You also have the following parameters available:
user
: Instance of the user modelchannel
: Currently used channellocaleCode
: Currently used locale code
Order Confirmation¶
This e-mail is sent when order is placed.
Code: order_confirmation
The default template: @SyliusShop/Email/orderConfirmation.html.twig
You also have the following parameters available:
order
: Instance of the order, with all its datachannel
: Channel in which an order was placedlocaleCode
: Locale code in which an order was placed
Shipment Confirmation¶
This e-mail is sent when the order’s shipping process has started.
Code: shipment_confirmation
The default template: @SyliusAdmin/Email/shipmentConfirmation.html.twig
You have the following parameters available:
shipment
: Shipment instanceorder
: Instance of the order, with all its datachannel
: Channel in which an order was placedlocaleCode
: Locale code in which an order was placed
Contact Request¶
This e-mail is sent when a customer validates contact form.
Code: contact_request
The default template: @SyliusShop/Email/contactRequest.html.twig
You have the following parameters available:
data
: An array of submitted data from formchannel
: Channel in which an order was placedlocaleCode
: Locale code in which an order was placed
Return Requests Emails¶
Hint
What are Return Requests? Check here!
Return Request Confirmation¶
This email is sent after return request has been created by a customer.
Code: sylius_plus_return_request_confirmation
The default template:
@SyliusPlusPlugin/Returns/Infrastructure
/Resources/views/Emails/returnRequestConfirmation.html.twig
Parameters:
order
- for which the return request has been created
Return Request Acceptation¶
This email is sent when the administrator accepts a return request.
Code: sylius_plus_return_request_accepted
The default template:
@SyliusPlusPlugin/Returns/Infrastructure
/Resources/views/Emails/returnRequestAcceptedNotification.html.twig
Parameters:
returnRequest
which has been acceptedorder
of the accepted return request
Return Request Rejection¶
This email is sent when the administrator rejects a return request.
Code: sylius_plus_return_request_rejected
The default template:
@SyliusPlusPlugin/Returns/Infrastructure
/Resources/views/Emails/returnRequestRejectedNotification.html.twig
Parameters:
returnRequest
which has been rejectedorder
of the rejected return request
Return Request Resolution Change¶
This email is sent when the administrator changes return request’s resolution proposed by a customer.
Code: sylius_plus_return_request_resolution_changed
The default template:
@SyliusPlusPlugin/Returns/Infrastructure
/Resources/views/Emails/returnRequestResolutionChangedNotification.html.twig
Parameters:
returnRequest
whose resolution has been changedorder
of the modified return request
Return Request: Repaired Items Sent¶
This email is sent when the administrator marks that a return request’s repaired items have been sent back to the Customer.
Code: sylius_plus_return_request_repaired_items_sent
The default template:
@SyliusPlusPlugin/Returns/Infrastructure
/Resources/views/Emails/returnRequestRepairedItemsSentNotification.html.twig
Parameters:
returnRequest
of which the items were sentorder
of the return request
How to send an Email programmatically?¶
For sending emails Sylius is using a dedicated service - Sender. Additionally we have EmailManagers for Order Confirmation(OrderEmailManager) and for Shipment Confirmation(ShipmentEmailManager).
Tip
While using Sender you have the available emails of Sylius available under constants in:
Example using Sender:
/** @var SenderInterface $sender */
$sender = $this->container->get('sylius.email_sender');
$sender->send(\Sylius\Bundle\UserBundle\Mailer\Emails::EMAIL_VERIFICATION_TOKEN, ['[email protected]'], ['user' => $user, 'channel' => $channel, 'localeCode' => $localeCode]);
Example using EmailManager:
/** @var OrderEmailManagerInterface $sender */
$orderEmailManager = $this->container->get('sylius.email_manager.order');
$orderEmailManager->sendConfirmationEmail($order);