No bug Incomplete Checkout - user is created, but there is no activation email :(

  • Dmitrijs Rekuns
  • Topic Author
  • Away
More
1 month 1 week ago #2298 by Dmitrijs Rekuns
Hi Ruud,

"New User Account Activation" is set to "Self" in Users options. When user does not complete the checkout (for example drop it on Stripe Checkout page), he cannot login to the website anymore, because new user is created, but there is no activation email. He receives an email (from ochSubscriptions as I understand) that his account is created and he can login, but that's not true.

Best regards,
Dmitrijs
The topic has been locked.
More
1 month 1 week ago #2299 by Ruud van Lent
Hi Dmitrijs,
this is intended.

when registering on a joomla site with com_users (and self), the user will get an email  to validate he is who is claiming to be (checked by email with activation link).
In ochSubscriptions this is also used for free checkouts, but for a paid checkout the actual payment will be used as proof that the user is who he claims he is.

So when he doesn't complete the payment, it is exactly the same as with a normal com_users registration where the user doesn't click the link to activate the account.

The logic is the same as it was in rd-subs. With the difference that when a the account is created and the customers doesn't complete the payment, he can then (in the checkout) e.g. use a different payment method and ochSubscriptions will remember the already created (but not yet activated) account for this customer and activate that on succesfull payment.
The topic has been locked.
  • Dmitrijs Rekuns
  • Topic Author
  • Away
More
1 month 1 week ago - 1 month 1 week ago #2300 by Dmitrijs Rekuns
OK, that sounds logical.
It seems that the problem is in the template for account creation. We have the following in it:
Code:
{if({user:useractivation}==1)}Your account is created and must be verified before you can use it.To verify the account select the following link or copy-paste it in your browser:[url]{user:useractivation_link}[/url]Once your account has been activated you can login to [url={global:site_url}]{global:sitename}[/url] using the username and the password you entered during registration.Accounts that are not activated within 5 working days will be removed from our system.{endif}
This email should be for "SELF". Right?
But I have received this one:
Code:
{if({user:useractivation}==0)}We have created your user account a few seconds ago.You can login to [url={global:site_url}]{global:sitename}[/url] using the username and the password you entered during registration.{endif}
That's for NONE.
Last edit: 1 month 1 week ago by Dmitrijs Rekuns.
The topic has been locked.
More
1 month 1 week ago #2301 by Ruud van Lent
This is the default:
Code:
{subtemplate:header} {if({user:useractivation}==1)}Your account is created and must be verified before you can use it. To verify the account select the following link or copy-paste it in your browser: {user:useractivation_link} Once your account has been activated you can login to {global:sitename} using the username and the password you entered during registration. Accounts that are not activated within 5 working days will be removed from our system.{endif} {if({user:useractivation}==2)}Your account is created and must be verified before you can use it. To verify the account click the following link or copy-paste it in your browser: {user:useractivation_link} After verification an administrator will be notified to activate your account. You'll receive a confirmation when your account is activated. Once your account has been activated you can login to {global:sitename} using the username and the password you entered during registration. Accounts that are not activated within 5 working days will be removed from our system.{endif} {if({user:useractivation}==0)}We have created your user account a few seconds ago. A successful payment is used to verify and activate your account. Once your account has been activated you can login to {global:sitename} using the username and the password you entered during registration.{endif} When logged in you can download the extensions that are part of your subscription. {subtemplate:footer}

so in com_users the values are:
  • 0 = none
  • 1 = self
  • 2 = administrator
but ochSubscriptions 'overwrites' com_users setting 1 = self  to 0 = none / payment on checkout:
  • 0 = none / via payment
  • 1 = self via link in mail
  • 2 = administrator
We need to do this because if we keep it 1, then com_users will send the mail to the user (which is what we do not want).
 
The topic has been locked.
  • Dmitrijs Rekuns
  • Topic Author
  • Away
More
1 month 1 week ago - 1 month 1 week ago #2302 by Dmitrijs Rekuns
Hm, but if a user will be back in a few days and will try to use the same credentials during the checkout what will happen? User will be allowed to use the same?
Last edit: 1 month 1 week ago by Dmitrijs Rekuns.
The topic has been locked.
More
1 month 1 week ago - 1 month 1 week ago #2303 by Ruud van Lent
Then he will get message that user with this name / email already exists.
just like when registering an account with com_users and not activating it.

It works the same.

Only change is then when leaving the checkout, the user is created and I store the created user info for that user in the session, so when the user then checkouts out again a new account will not be created (again), but the account that was stored in the session.

When the session is aborted then there is no knowledge if this is the same user or a new user trying to create an account with the same credentials
Last edit: 1 month 1 week ago by Ruud van Lent.
The topic has been locked.
  • Dmitrijs Rekuns
  • Topic Author
  • Away
More
1 month 1 week ago #2304 by Dmitrijs Rekuns
We can close this topic :)
The following user(s) said Thank You: Ruud van Lent
The topic has been locked.