javascriptnode.jsgmailsmtp-auth

Error: Invalid login: 535-5.7.8 Username and Password not accepted


The code below is perfect to send emails using node.js code/program. However, still getting error mentioned in the title.

var nodemailer = require('nodemailer');

var transporter = nodemailer.createTransport({
  service: 'gmail',
  auth: {
    user: 'haideryaqoobengr@gmail.com',
    pass: '**********'
  }
});

var mailOptions = {
  from: 'haideryaqoobengr@gmail.com',
  to: 'haideryaqoob720@gmail.com',
  subject: 'Sending Email using Node.js',
  text: 'That was easy!'
};

transporter.sendMail(mailOptions, function(error, info){
  if (error) {
    console.log(error);
  } else {
    console.log('Email sent: ' + info.response);
  }
});

Solution

  • NOTE: this is the accespted answer; however, on May 2022 Google disabled less secure apps. Read the answers below this one.

    Yes, code is perfect. However, you need to allow less secure apps from your google account to send emails. Through this link. Allow less secure apps From your Google Account