Now sending users to Stripe Checkout during the process method #3104
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
All Submissions:
Changes proposed in this Pull Request:
Previously, we had to send users to Stripe Checkout on the
pmpro_checkout_before_change_membership_level
hook since user objects would not exist during the gateway'sprocess()
method. Now, however, users are created before payments are taken.Currently, if sending a user to Stripe Checkout fails (due to not being able to connect to Stripe, for example), the checkout will complete successfully without collecting payment. Switching to using the
process()
method allows us to halt checkout on these errors and show a relevant error message at checkout.The easiest way to replicate is to set up a local dev environment and check out with Stripe Checkout with your machine's wifi disabled.
Other information:
Changelog entry