I am using Toolset on my website in combination with Woocommerce in order to have a registration fee. I've set the option "User status when the payment status updates" to always "creat user", except when the purchase is canceled. In that case the option is set to "hide user" (see the attachment).
But sometimes all the registration data are missing for the users that have paid. I receive more and more emails every day from paid users and I can't even find their registration, because all the data are gone.
I'm also getting an error message in the log(I attached a picture)
Thank you for getting in touch. I did a quick test of this on my end on a demo site and it works fine.
Would you mind providing me with admin access so that I can test this out to see what happens? I may take a copy of the site as to not interfere with your live environment.
I tried to do a quick test here by enabling the Cash on Delivery option to see if I can create a user and it works fine. I didn't experience any errors.
Can you give me the step by step instructions on how to replicate the issue ?
Hi,
thank you for the quick response.
it really is very hard to recreate. This happens when someone registers using on of the forms like this one: hidden link
one of every 15 to 20 registrations it happens, that the user pays and sees the thank you page after the payment is done. But when he/she tries to log in there is no account. We can see the payment in Woocommerce backend, but there is no new user created.
I haven't been able to recreat it myself, but when it happens I see this error message in our Logs:
AH01071: Got error 'PHP message: id was called incorrectly. Produkteigenschaften sollten nicht direkt abgerufen werden. Backtrace: require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('wp_loaded'), WP_Hook->do_action, WP_Hook->apply_filters, WC_Cart_Session->get_cart_from_session, WC_Product->is_purchasable, apply_filters('woocommerce_is_purchasable'), WP_Hook->apply_filters, wpas_woocommerce_is_purchasable, WC_Abstract_Legacy_Product->__get, wc_doing_it_wrong. This message was added in version 3.0.PHP message: id was called incorrectly. Produkteigenschaften sollten nicht direkt abgerufen werden. Backtrace: require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('wp_loaded'), WP_Hook->do_action, WP_Hook->apply_filters, WC_Cart_Session->get_cart_from_session, WC_Product->is_purchasable, apply_filters('woocommerce_is_purchasable'), WP_Hook->apply_filters, sv_disable_repeat_purchase, WC_Abstract_Legacy_Product->__get, wc_doing_it_wrong. This message was added in version 3.0.', referer: hidden link
In my case testing on the sandbox i'm yet to encounter the issue.
Can you perhaps check the order status of the user that is having the issue ? Perhaps there is an issue with the payment because the user will only be created if the order status is set to Completed. Any other status and the user account won't be accessible.
Also is there a specific user on the site that is having this issue ? I've also tested the case where the user's payment is being processed which means the order isn't set to completed and in this case the user isn't created.
As it stands i'm not able to replicate but please check to see if you're able to find a specific user with the issue so that I can use that as a point to investigate further.
its still happening on a daily basis. The users register and pay via Paypal. The payment status is set to completed but there is no user registration to be find.
I myself haven't been able to recreate this situation.
But is there an option to register the user regardless of the payment going through ? Or even better: can I change the settings, so that the user is created either way, but the account will only be activated, if the payment status is 'completed' ? we lose user data otherwise and have to ask them to register again.
Hi,
I'd really appreciate any help because we're still having this issue. My Question is:
Is there an option to register the user regardless of the payment going through ? Or even better: can I change the settings, so that the user is created either way, but the account will only be activated, if the payment status is 'completed' ? we lose user data otherwise and have to ask them to register again.
At this point what I would do is to re-create the form itself so a new cron job can be created for the users who are trying to register.
From there we can essentially what may be causing the issue to see if it is actually the form or some communication between Woocommerce and the form.
Based on the settings the user is created but hidden until the payment is completed. As I mentioned there might be some break in communication where it is failing and the user account perhaps get deleted as the form might be getting a false cancelled account.