Hi Yoshihiko,
Thanks for the detailed explanation and the screenshots — that helps a lot. Let me walk through what's happening and how to move forward.
Why no WordPress user is being created
Looking at your test-user-2 form configuration, the User status when the payment status updates section is set to:
- Purchase processing → Hide user
- Purchase complete → Create user
- Purchase refunded → Hide user
- Purchase cancelled → Hide user
This is exactly how the Charge users for registering premium accounts flow is designed to work. With these settings, the WordPress user is only created when the WooCommerce order reaches the "Completed" status. While the order is in any other state — pending, processing, on-hold, failed, or cancelled — the user is held in a hidden state and won't appear inUsers in the WordPress backend.
So when you describe step 4 ("do not skip after subsequent payments / blocking a specific payment app") and step 5 ("new users are not registered"), what you're observing is the expected behavior: because the payment didn't go through, the order never reached "Completed," and Toolset Forms Commerce correctly held back the user creation.
Please check the steps below:
1. WooCommerce Shop page is set to "Checkout"
In (WooCommerce → Settings → Products → General), your Shop page is set to Checkout. This isn't correct — the Shop page and the Checkout page should be two different pages. With Shop pointing to Checkout, the cart and checkout flow can break and may be contributing to the issue you're seeing:
- Create (or select) a separate "Shop" page under Pages.
- Go to WooCommerce → Settings → Advanced → Page setup and confirm Cart, Checkout, My Account, and Shop are each set to the correct, distinct page.
2. Test the full payment flow end-to-end
To confirm whether user creation itself is working, please run a test where the order actually reaches "Completed":
- Use a payment method that completes immediately (for testing, Cash on Delivery is the simplest, but note that COD orders go to "Processing" by default, not "Completed" — so you may need to manually mark the order as Completed in WooCommerce → Orders).
- Or, if you have a Stripe/PayPal test/sandbox configuration, use that to simulate a successful payment.
- Once the order shows as "Completed" in WooCommerce → Orders, check Users — the user should now appear with the role configured in the form.
If, after a successfully completed order, the user is still not created, that's where we need to dig deeper.
Thanks.