swipestripe / silverstripe-swipestripe

Ecommerce module for SilverStripe
http://swipestripe.com
33 stars 49 forks source link

No guest checkout #72

Open RuthAdele opened 10 years ago

RuthAdele commented 10 years ago

I know this has been discussed previously as something that needs to be worked on separate to the Customer/Memebr issue. I thought it best to bring up an issue here so it doesn't get forgotten.

I've started using Swipestripe for online shop solutions for both my private clients and through Plastyk Studios (the web studio I work for). We're all quite impressed by the out of the box function Swipestripe gives you, but we think that it's very important to have some sort of guest checkout.

I'm happy to help out with the work to get this going if you need an extra pair of hands ;)

silverstripe-elliot commented 10 years ago

I'd definitely like this as well, just short of time to get it done. I hacked up a "guest account" to handle this in a demonstration... I'd be hesitant to use something like it in a production environment!

frankmullenger commented 10 years ago

@RuthAdele have had an extensive look at this today. Unfortunately there is no neat way to accomplish this as far as I can see. I think replacing the ProductForm entirely with Object::useCustomClass() or similar might be the way to go here but a bit hard to build it in to the core module as other modules for addresses, shipping, tax have dependencies on Customer addresses for example.

RuthAdele commented 10 years ago

Yeah, that's what I found when I went looking at it. I figured you guys have a much better understanding on how everything works than I do. Can you think of any other way it can be accomplished? I have a couple of clients who really don't like it and are putting up with it for the time being. They think that they may drive customers away if they are forced to sign up.

silverstripe-elliot commented 10 years ago

@RuthAdele, see my example above. It's not perfect, but it effectively uses a "public" account that guests log into without realising it. @frankmullenger, could something like that be turned into a module and configurable in ShopConfig?

RuthAdele commented 10 years ago

I don't love that idea, but I see what you're doing. I would rather put more effort in a do something to bypass the requirement for a member.

stevie-mayhew commented 10 years ago

@RuthAdele we have implemented our own fork which changes the OrderForm function to allow guest checkout, although at the moment it means creating fake members when using guest checkout. We also have to maintain the fork which isn't that huge of a deal.

If you are interested I can post up the code changes we had to make for this. It also means that we don't allow people to log back in and view past orders, although we could probably get around this by sending them an email with a lostpassword link and an invitation to register the account. There would need to be hooks for pulling the information into the member class and editing the "CustomerEmail" variable we set and changing it to the "Email" for the user too.

I'm looking to change the customer class to not have to involve Member in the 3.0 branch - if you'd like to help me work on this that would be fantastic.

RuthAdele commented 10 years ago

Sure thing, happy to help where I can. Feel free to email me ruth@ plastyk.com.au

RuthAdele commented 9 years ago

Any progress on this?

RuthAdele commented 8 years ago

Bump. This has come up again with another client. Again, me and my co-workers (@Turnerj and @3Dgoo) are happy to help out.

frankmullenger commented 8 years ago

@RuthAdele I haven't got much time for this module currently, please feel free to build a guest checkout. I'd suggest trying a replacement of ProductForm (I think it is).

RuthAdele commented 8 years ago

Thanks @frankmullenger @stevie-mayhew suggested in an earlier comment that he had some code that changed the OrderForm function - I'd be keen to take a look at this if that's possible? And that he was looking at changing the Customer class to not have to involve Member (for the 3.0 branch :O But that was like 2 years ago, so I suppose plans have changed?