Reducing steps in checkout process

rahuldolas123
Forums
Hi, I am using Opigno with commerce app. I have some courses for sale. Currently, there are lots of steps in checkout process. Buy access button > OG group joining confirmation > Click here to checkout > and then Finally payment form Is it possible to reduce these steps? Is it possible to append add to cart button functionality to buy access button? Need some technical/programatical advise here. Thank you! Rahul D.
Suzette

Reducing steps in the checkout process

Yes, I have the same concerns about the many steps with checkout and would like to have suggestions on how to simplify this process, as well.
axel

This if of course possible,

This if of course possible, but requires a custom module.

Which steps would you like to group?

Could you share on this forum what you imagine as a more user friendly process to buy access to a course?

rahuldolas123

Steps that I think will make a nice checkout flow

Hi axel, Here is a scenario that is generally faced when you enable commerce app within opigno - https://example.com/node/1 -> "Buy Access" button https://example.com/group/node/1/subscribe/og_user_node -> "Are you sure you want to join (group) for $(price)?" https://example.com/group/node/1/subscribe/og_user_node -> "Product added to cart click here to checkout" https://example.com/checkout/1 -> "The Actual Payment form" In an ideal situation, when user clicks on "Buy Access" button, - user should be shown a popup in ajax that asks him either to go to checkout or continue browsing and add other courses to cart. - when user is done shopping, he/she will click checkout button shown in ajax popup that takes user to payment form. So here, we eliminate (or process in background) join group confirmation. and ajax-ify add to cart confirmation. Basically all these things will happen on course or class page where user can see "Buy Access" button. I am afraid that many potential customers leave the checkout process in between discouraged by so many confirmations. I thought about making a custom solution that goes like this - - append the logic of "add to cart" button to "buy access" button, so that will carry out the joining confirmation at back-end but user will not be shown any separate page for this. - use modules such as Commerce Ajax Add to Cart for ajax-ifying add to cart confirmation message. So, what you think axel?
axel

Hi

Hi

I agree with your that it's important to have a simple buying process.

The step with the summary of all products, and if applicable general sales conditions, before clicking on the "pay" button and going to the payment gateway is mandatory in Europa (according to the legislation related to e-commerce shops).

So we could only remove one step and have:

- user should be shown a popup in ajax that asks him either to go to checkout or continue browsing and add other courses to cart.- when user is done shopping, he/she will click checkout button to see the summary of their cart- when clicking on "Proceed" button users are lead to the payment form.  
rahuldolas123

Alternate way

You are right. Alternatively, we can show summary of all products in cart in the same ajax popup that will appear when clicking on add to cart button along with Checkout button and continue shopping button. So this stays in compliance with European laws. So, this way, we just need to eliminate "Are you sure you want to join group at $price" screen
axel

I added this in our list of

I added this in our list of improvements since it can be interesting for ergonomics: https://www.drupal.org/node/2577625

But I cannot tell you when it will be done and in which release it will be included.

Thanks for your feedback !

rahuldolas123

Thank you!

Thank you axel! Meanwhile, I will try to create a workaround using custom code or any contributed modules. I will update this thread later.
rahuldolas123

In case someone needs it

Hi, My team has come up with a workaround to get checkout process simplified. Here is what to do: * A custom code that replaces "Buy Access" button with "Add to Cart" button - (this way confirmation screen is bypassed)function hook_node_view($node, $view_mode, $langcode) { if ($node->type == 'course') { $url = "group/node/{$node->nid}/subscribe/og_user_node"; if (!empty($node->content['group_group']['0']['#href']) && (($node->content['group_group']['0']['#href'] == $url) || ($node->content['group_group']['0']['#options']['query']['destination'] == $url))) { $form = opigno_commerce_app_join_link('node', $node->nid); $node->content['group_group']['0'] = array( '#type' => 'markup', '#markup' => drupal_render($form) ); drupal_set_title(check_plain($node->title)); } } } * Edit the rule that will redirect the user to "cart" instead of "checkout". Along with this uncheck remove destination parameters from url. This should make the entire process 2 stepped. Also, note that this code works just for course page. Thank you, Rahul D.
axel

Hi,

Hi,

Thanks for sharing this code !

Best regards,