checkout workflow

  • Posts: 1
  • Thank you received: 0
14 years 1 week ago #572

I've been reading your docs on the checkout workflow.
I'm looking for a way to customize the checkout process so that it resembles a practice that many hosting or domain registration companies use... upselling during the checkout process.
Step 1, select the plan you want - buy now adds it the cart, goes to the next page offering add-on products, some are selected by default which the user can simply unselect or say NO THANKS, on to next page of more add-ons etc... Until the can checkout.
How could I accomplish this with HikaShop? Any suggestions?

Please Log in or Create an account to join the conversation.

  • Posts: 82721
  • Thank you received: 13338
  • MODERATOR
14 years 1 week ago #578

Hi,

Actually, with the views available by default in HikaShop, you can't have a step with a list of product from which to choose whether they would exclusive from one another or not.
However, you can always create a new view to achieve that and if it works we could even propose it in HikaShop by default. To make a checkout view you need to know PHP quite well and that's not something we can provide free of charge either. If you know PHP, it's not really difficult. You have three things to do:
1/ add a file called custom.php in the folder components/com_hikashop/views/checkout/tmpl. In this file, you will be able to display all the html you need so that your customers can choose what you want them to choose.
2/ edit the file components/com_hikashop/controllers/checkout.php and add three functions : before_custom(), after_custom() and check_custom(). In before_custom you can check whether or not the conditions to display this view are met and return true or false accordingly. In after_custom, you can get the data entered by the user and act accordingly. The check_custom function will be called just before creating the order in the after_confirm step. There you can mke sure that the user entered what he had to enter and didn't try to cheat the system by skipping a step etc.
3/ edit the file components/com_hikashop/views/checkout/view.html.php and add a function checkout(). There you can load the data you need in the custom.php file, if you need to.

Then, you will be able to add this "custom" view in the checkout workflow option. That way, you can create as much views as needed.
You can look at the terms view (it adds a terms and condition checkbox in the checkout) which we added recently for a simple example on how to do it.

Those are heavy customization and it's not possible to update without loosing your modifications, so before updating make sure you do a backup of everything you add. In the future, we might add plugin triggers in all that so that you can create a plugin to add views without having any problem at update. We will see :)

Please Log in or Create an account to join the conversation.

  • Posts: 329
  • Thank you received: 94
7 years 11 months ago #256443

Resurrecting an old thread...

In the newest upcoming HikaShop 3, how easy will it be to add custom view pages into the checkout flow? We're seeing a lot of requests from clients for intelligent product upsells as the customer enters checkout. We're also getting more requests for post-checkout "one click" upsells that automatically add an extra product to the existing order (without going through checkout or adding their credit card number again).

Would love to get some insight into how customizable the new HikaShop will be for these types of features - or even better, if you are including some as new features in the Business edition. :)


~ Deb Cinkus, CEO

Polished Geek: more with monday․com
eCommerce Business Process Automation Experts

Please Log in or Create an account to join the conversation.

  • Posts: 82721
  • Thank you received: 13338
  • MODERATOR
7 years 11 months ago #256445

Hi,

This thread is indeed really old.

It's been a few years now that we have a specific API www.hikashop.com/support/documentation/6...tation.html#checkout to easily add new steps to the checkout via plugins.
So any developer can develop checkout plugins to add steps to the checkout and the triggers will be exactly the same with HikaShop 3.

So adding "intelligent upsells" during the checkout based on the needs of your clients should be easy to do like that. It could also be some interesting plugins to sell to other users of HikaShop.

Now I'm not sure what you mean by "post checkout". Because post checkout, the order is already created, and if the customer already entered his credit card, the payment has already been made. You don't have the credit card data anymore, and you can't add a product to the order and change the amount if the payment is already done since you wouldn't be able to get the money for that new product in the order.
And if you're talking about adding that just before finishing the order at the end of the checkout, then you can use the checkout API too.

HikaShop 3.0 will bring even more customizable capabilities as you'll be able to modify the checkout workflow dynamically via plugins. For example, HikaAuction 2.0 will be able to use the checkout for the payments of the bids with an adapted checkout, while now, it creates the order and directly redirect the customer to the payment gateway. So the customers will have the possibility to select shipping, configure their billing/shipping address, etc for the payment of a bid thanks to that improvment.
Hikashop 3.0 will also bring ajax refresh to the checkout, but that won't change much regarding the customization capabilities of the system. But I don't see what would be left in need of customization capabilities in the checkout ?

The following user(s) said Thank You: PolishedGeek

Please Log in or Create an account to join the conversation.

  • Posts: 329
  • Thank you received: 94
7 years 11 months ago #256531

nicolas wrote: Now I'm not sure what you mean by "post checkout". Because post checkout, the order is already created, and if the customer already entered his credit card, the payment has already been made. You don't have the credit card data anymore, and you can't add a product to the order and change the amount if the payment is already done since you wouldn't be able to get the money for that new product in the order.
And if you're talking about adding that just before finishing the order at the end of the checkout, then you can use the checkout API too.

HikaShop 3.0 will bring even more customizable capabilities as you'll be able to modify the checkout workflow dynamically via plugins.
...
Hikashop 3.0 will also bring ajax refresh to the checkout, but that won't change much regarding the customization capabilities of the system. But I don't see what would be left in need of customization capabilities in the checkout ?


Thanks, Nicolas. The dynamic checkout customization capability coming in HikaShop 3 sounds more like what we are looking for. Will it support that in the first stable release?

Regarding the post-checkout upsell, there are some (non-Joomla) carts that allow you to do this, but generally they are hosted carts with built in payment processing. So if the customer buys the upsell product they just authorize again for the additional amount, edit the order and capture the new full order amount with the credit card merchant.

While you could probably hobble something together with Authorize.net to do this in HikaShop, your suggestion to instead make it the final page the customer sees BEFORE the credit card is actually charged and the order created is a more elegant solution in this case. That's better for a non-hosted cart with multitudes of different payment method options.

Thanks for your help. We're managing the eCommerce marketing and website support for several clients with large HikaShop stores, and higher end marketing features like intelligent upsells during and post-checkout are becoming more in demand. Any insights you can provide about the upcoming Hikashop 3 features that could expand marketing and sales capabilities of the platform will be much appreciated!


~ Deb Cinkus, CEO

Polished Geek: more with monday․com
eCommerce Business Process Automation Experts
The following user(s) said Thank You: alexmartin

Please Log in or Create an account to join the conversation.

  • Posts: 82721
  • Thank you received: 13338
  • MODERATOR
7 years 11 months ago #256533

Hi,

1. Yes, it will support that in the first stable. Actually, even the beta will support that as we're currently working on having HikaAuction integrated with it (and thus the API will already have been tested and validated)

2. Yes, as you say, having post sell functions like that would require store the credit card of the customer (HikaShop doesn't on your website for security reasons) and it would be possible with HikaShop by integrating with something like the CIM API of Authorize.net
But yes, it has to be done on a per payment gateway basis and it can't be applied generally to all the payment gateways.

3. I'm not sure what insight I could provide regarding HikaShop 3 and marketing but I'll be happy to help if you have any problematic.

The following user(s) said Thank You: alexmartin

Please Log in or Create an account to join the conversation.

  • Posts: 132
  • Thank you received: 3
  • Hikaserial Subscription Hikashop Business
7 years 3 months ago #274228

Intelligent Up-selling is extremely important function.

1) WHEN
When up-sells should be positioned- before entering payment info or after?
I have done thousands tests to see what works better.

Think about the buyer mindset:
They want to buy a one particular item. Placing Up sells before they complete payment for that particular item is annoying and it increases cart abandoning. So, let the customer complete their payment first, and, upsell immediately after.

2) WHAT
The upsells should be from a list of highly relevant products to the one that a customer made payment for and in logical order.

I may say that ability to upsell is one of the MOST important functions that ads to revenue and ROI.
The value of the HIKASHOP will be much more if this function is implemented.

Here is what needed to create workaround plugin for intelligent upsells:

After checkout page - a Thank you page - should contain product ID or IDs of each product that is being paid for.

like yourdomain.com/thank-you-page?#111 ϧ

where 111 and 999 - id of a product being paid for.

If this can be implemented - i can implement upsells easily without being a programmer.
Read answer to my question here: www.hikashop.com/forum/checkout/891098-t...possible.html#273764

(I would recommend to leave the "return URL" empty in your payment methods settings, and then customize the view file "after_end" via the menu Display>Views in order to look in the order produts data ( www.hikashop.com/forum/checkout/862352-a...hp.html?limitstart=0 ) and then redirect to your thank you page URL with the additional parameters in the URL.)

P.S. Regarding Upsells BEFORE payment - i have implemented it with no special coding. programming or change of any hika files.

Last edit: 7 years 3 months ago by alexmartin.

Please Log in or Create an account to join the conversation.

  • Posts: 329
  • Thank you received: 94
7 years 3 months ago #274229

Hi, Alex - Does your solution create a new order and re-authorize the customer's card automatically, with "one click"?

Or is it simply an upsell page with related products to what they purchased, but requires the customer to re-enter checkout and enter their payment information again?

Curious - always eager to exchange eCommerce marketing ideas with other HikaShop fans!


~ Deb Cinkus, CEO

Polished Geek: more with monday․com
eCommerce Business Process Automation Experts

Please Log in or Create an account to join the conversation.

  • Posts: 132
  • Thank you received: 3
  • Hikaserial Subscription Hikashop Business
7 years 3 months ago #274230

I don't do re-authorization. It is probably can be done with sessions or cookies. I don't really worry to let customers complete the checkout more than once.
I have a small shop and what works for me may not works for you with a large shop.

The current workaround solution is inside your payment processor. IF you use Stripe ( or Authorize) - you can Add payments to the same customer. Just ask on upsell page what they WISH to add to their purchase and manually add it in the processor. I understand it may not the ideal solution.

Let me clarify what i have right now:
I upsell BEFORE check out. It ca be done by reading refferal page url:

If a customer ended up on a checkout page coming out from page: mydomen.com/APPLES ,
i pop up or redirect to next logical product mydomen.com/ORANGES

The trigger is the word APPLES in the referral url

this is simple model and you can make it more sophisticated.

I need some one to help:
I want to test and compere what wil be a better - do upsells AFTER or Before. For this I need help.
I need some one to help me to add a product ID or a product Name at the END of the Thank you page ( www.hikashop.com/forum/checkout/891098-t...-is-it-possible.html )

Please Log in or Create an account to join the conversation.

  • Posts: 329
  • Thank you received: 94
7 years 3 months ago #274231

Thanks for clarifying. Unfortunately, manual adjustments in Authorize.net or PayPal or whatever wouldn't work for any of our clients who want an upsell feature. All of them are larger businesses with significant customization and marketing automation, and the last thing they want is something manual to track.


~ Deb Cinkus, CEO

Polished Geek: more with monday․com
eCommerce Business Process Automation Experts

Please Log in or Create an account to join the conversation.

  • Posts: 82721
  • Thank you received: 13338
  • MODERATOR
7 years 3 months ago #274247

Hi,

As I said in the other thread, you can do that in the "after_end" view file of HikaShop with some custom code:

I would recommend to leave the "return URL" empty in your payment methods settings, and then customize the view file "after_end" via the menu Display>Views in order to look in the order produts data ( www.hikashop.com/forum/checkout/862352-a...hp.html?limitstart=0 ) and then redirect to your thank you page URL with the additional parameters in the URL.

If you know a bit about PHP, getting the product ids from the order and creating a URL with them and redirecting to it shouldn't be a problem. It's just a few lines of code.

Please Log in or Create an account to join the conversation.

Time to create page: 0.096 seconds
Powered by Kunena Forum