Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add an ability to repeat a previous order («Reorder») #671

Closed
dmitrii-fediuk opened this issue Jan 20, 2018 · 4 comments
Closed

Add an ability to repeat a previous order («Reorder») #671

dmitrii-fediuk opened this issue Jan 20, 2018 · 4 comments
Labels
enhancement For issues that describe a feature that needs to be added, changed, or removed, but is not a bug help wanted For issues that have a clear solution described and are not currently prioritized core team work

Comments

@dmitrii-fediuk
Copy link

Expected behavior

It would be nice to provide an ability to customers to repeat their previous orders with a «Reoder» button:
01

An example from Magento 2:
02
03

Actual behavior

There is no such ability...

Steps to reproduce the behavior

Place an order and go to your own account (profile).

Versions

Node: 9.4.0
NPM: 5.6.0
Meteor Node: 8.9.3
Meteor NPM: 5.5.1
Reaction CLI: 0.24.2
Reaction: 1.6.4
Reaction branch: master

@brent-hoover brent-hoover changed the title Add an ability to repeat a previous order («Reoder») Add an ability to repeat a previous order («Reorder») Jan 21, 2018
@brent-hoover
Copy link
Collaborator

This would be a great feature to add. We would welcome a pull-request for it.

@aldeed aldeed transferred this issue from reactioncommerce/reaction Jul 11, 2019
@aldeed aldeed transferred this issue from reactioncommerce/reaction-feature-requests May 5, 2020
@aldeed
Copy link
Contributor

aldeed commented May 5, 2020

Moved this to example-storefront since it should be possible to implement this entirely in the storefront without API changes.

@aldeed aldeed added enhancement For issues that describe a feature that needs to be added, changed, or removed, but is not a bug help wanted For issues that have a clear solution described and are not currently prioritized core team work labels May 5, 2020
@janus-reith
Copy link
Collaborator

Would such a reorder feature just take care of adding the same items to you cart again and maybe set the shipping address, or actually take care of placing the whole order?
The former would probably be easy to implement, the latter could get more complex with things like payments, which would also need to be authorized again.

One thing to keep in mind is, that the billing address is not stored on the cart permanently, so it might be the most simple solution if that button just adds items to cart, sets the shipping address and takes you the payment step and pre-fills the billing address client side.

Some more considerations:

  • What if the current user already has items in the cart? Only one cart is allowed per account, and if we just add cart items to that existing cart, it might under some circumstances influence which shipping rates are available, and which payment types.
  • Also with just the same items that should be added to cart, availability might change or some shipping or payment option could not be available anymore. There should be fallbacks for each of these steps.

@aldeed
Copy link
Contributor

aldeed commented May 21, 2020

@janus-reith All good questions. It seems the first two simple implementations of this would be an Add to Cart button next to each item when viewing previous orders, and an Add All to Cart button for the order itself.

For more of a one-click reorder, it might be possible to skip the cart entirely. You can call placeOrder without there ever having been a cart. But we haven't really tested this approach in a UI, there could be bugs or unintentional dependencies on cart during checkout that we'd need to fix. Plus you would have to write a slightly different checkout page that builds OrderInput without saving anything to cart.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement For issues that describe a feature that needs to be added, changed, or removed, but is not a bug help wanted For issues that have a clear solution described and are not currently prioritized core team work
Projects
None yet
Development

No branches or pull requests

5 participants