How to make the transactional email being sent asynchronously or synchronously?


(Dmitry Fedyuk) #1
  1. Open the backend «Stores» → «Configuration» page.
  • Go to the «Sales» → «Sales Emails» section.
  • Locate the «General Settings» → «Asynchronous sending» option and set it to the proper value («Yes» or «No»).

The default value is «No»:

How is it used:

How does email scheduling work in cron job?
How is a confirmation email sent on an order placement?
How are the «send_email» (setSendEmail, getSendEmail) / «email_sent» (setEmailSent, getEmailSent) flags used for an order?
(Dmitry Fedyuk) #2

See also:

(Dmitry Fedyuk) #3

A post was split to a new topic: «How " * - if $forceSyncMode parameter is set to TRUE" is set? Where?»

(Dmitry Fedyuk) #4

The asynchronous email sending solves the problems like this:

In my production instance calls like $mailer->send(); takes around 40 to 60 seconds.

(Dmitry Fedyuk) #5

Please note that the asynchronous email sending does not work correctly for non-English stores:

(Dmitry Fedyuk) #6

How are the send_email (setSendEmail, getSendEmail) / email_sent (setEmailSent, getEmailSent) flags used for an order?