checkout-js
checkout-js copied to clipboard
STRIPE-52 Auto-Select Address and mount shipping component for Stripe Link
What? STRIPE-52
Adapt logic to support stripe link flow including:
- Stripe customer component,
- Stripe shipping component,
- Hide APMS when Stripe link is authenticated,
- Auto step for authenticated stripe customers
- Logic to handle shipping methods in different cases (least expensive, more expensive, no method selected, excluding pickup)
Why?
As a Guest Shopper, I want to use the Stripe Link experience.
Testing / Proof
HOW TO SETUP https://drive.google.com/file/d/1Y6T-hohrbhelYQeupL754KRo6vLz7DPF/view?usp=sharing PURCHASE USING STRIPE CUSTOMER https://drive.google.com/file/d/1brzLC7kAXcC7YGz1BMrvA5BXUZTpHF7J/view?usp=sharing WHAT HAPPENS IF A BC CUSTOMER TRY TO USE LINK (spoiler, we are using BC components if It's a BC customer, Link experience is just for guest) - AS A BC CUSTOMER AT THE BEGINNING https://drive.google.com/file/d/14tUb6mmXuJWMzneNdhXM7tG8EX0_xQ5O/view?usp=sharing - AS A BC GUEST AT THE BEGINNING BUT BC CUSTOMER ON THE CUSTOMER STEP https://drive.google.com/file/d/1jG79FPKF4vNkUkSIO3DgYSDlFcK22Jph/view?usp=sharing HOW TO CREATE A STRIPE CUSTOMER AND THEN PURCHASE AS A STRIPE CUSTOMER https://drive.google.com/file/d/1ESENlAM5rIdWkTb4AY61acgjqZsBCVjr/view?usp=sharing
Dependency of
https://github.com/bigcommerce/checkout-sdk-js/pull/1518
@bigcommerce/checkout @bigcommerce/apex-integrations
Thanks for the feedback @FranciscoOnt, I made changes, and It's ready for another review ♻️
Testing Done 💚 https://bigcommercecloud.atlassian.net/jira/software/c/projects/STRIPE/boards/622?modal=detail&selectedIssue=STRIPE-52
💚 testing done https://bigcommercecloud.atlassian.net/jira/software/c/projects/STRIPE/boards/622?modal=detail&selectedIssue=STRIPE-52
Sorry for being late on this, know that we have already tested this and have done some review + feedback assessment.
Does it make sense to break this PR into 2:
- PR 1 dealing with customer step
- PR 2 dealing with shipping step
I ask so since this will reduce the number of lines and files that we need to look into. It eases the cognitive load on the reviewer and we can together work on a solution that scales, where as it's pretty easy to miss things in large PRs.
Just a thought since it may speed up the whole process in this case.
Hey @animesh1987, I totally agree with you, I'm working on the break into 2 PRs
Hey @animesh1987 and @bc-peng, sorry for the late answer, I already created 2 PRs, please let me know any concerns https://github.com/bigcommerce/checkout-js/pull/1017 (customer and payment code), https://github.com/bigcommerce/checkout-js/pull/1018 (shipping code)
@AlanMunozN Is it possible to close this PR as we have already got two other PRs?