I have a site where am registering users via the front-end. I want to use email address as username and also want people to define their password on registration.

I have set the following in general.php:

'useEmailAsUsername' => true,
'autoLoginAfterAccountActivation' => true,
'activateAccountSuccessPath' => 'register/success',
'verificationCodeDuration' => 'P1W'     

However, when a user registers via the front-end - or I resend the activation link via the Control Panel - they are directed to a page/URL eg actions/users/verifyemail?code=XXXX&id=XXXX and get the following error message:


Invalid verification code. Please login or reset your password.

Can't figure out why the verification code is not working. Any suggestions?


  • Further to this - if I copy the activation link from the back-end I get a different URL: actions/users/setpassword?code=XXX&id=XXX rather than actions/users/verifyemail?code=XXXX&id=XXXX Commented Jul 8, 2016 at 8:18

1 Answer 1


Solved - bizarre one this. Was using a third-party email service via SMTP and it was manipulating the URL somehow. Switching to use a direct SMTP connection with a specific email account has resolved.

Go figure!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.