Nodemailer es un paquete para poder enviar correos electrónicos desde una aplicación de Node.js.

Los siguientes pasos son necesarios para poder enviar correos:

  1. Crear un "transporter" (Objeto usado para enviar emails) usando el protocolo SMTP o algún otro mecanismo de transporte.
  2. Configurando las opciones del mensaje (Quien envía qué a quien).
  3. Enviando el correo llamando al método sendMail desde transporter.

GMAIL

SENDGRID

Para poder enviar correos con SendGrid tendrás que crear un Single Sender Verification, con los datos de tu empresa.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/9a5ddb36-5ad3-4113-9644-ea1400c4be2f/Untitled.png

Después tendrás que crear una API KEY para poder enviar correos sin necesidad de pasar tus credenciales de acceso a SendGrid.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/afdcae42-58af-491e-ab35-4865c78e61ba/Untitled.png

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/c2100db3-9c8d-4996-9b67-ddaca105e6d8/Untitled.png

Por último tendrás que instalar la dependencia nodemailer-sendgrid y crear un transporter.

npm i nodemailer-sendgrid
const createTransporter = async () => {
    try{       
        // ===== SENDGRID ======
        const transporter = nodemailer.createTransport(nodemailerSendgrid({
            apiKey: process.env.SENDGRID_APIKEY
        }));
        return transporter;
    }catch(error){
        throw new Error(error);
    }
}