Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This article explains how to configure your BigCommerce cart to redirect to a FunnelKonnekt Checkout Champ checkout.

Note

Only follow this article if your checkout and upsell flow is finished inside of FunnelKonnekt Checkout Champ and you are ready to start sending the BigCommerce customers to your FunnelKonnekt Checkout Champ checkout page

To redirect the BigCommerce cart to the FunnelKonnekt Checkout Champ checkout page, it is required to manually set the routing on your BigCommerce cart page.

Redirect Checkout

  • Login to your BigCommerce store

  • Make a copy of your existing theme files as a back-up

    • Navigate to Storefront → My Themes → then click Advanced and select Make a Copy

  • Copy the below code Snippet

 

Code Block
 <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $('body').delegate('a[href="/checkout"], a#checkout', 'click', function(e){
            e.preventDefault();

            if (!$(this).hasClass('processing')) {
                $(this).addClass('processing').text('Please wait...');

                $.ajax({
                    url: '/api/storefront/cart',
                    success: function(cart) {
                    	var lineItems = cart && cart[0] && cart[0].lineItems && cart[0].lineItems && cart[0].lineItems.physicalItems ? cart[0].lineItems.physicalItems : [];
                    	var urlData = [];
                    	var getUrlData = function(index) {
                    		$.ajax({
                    			url: lineItems[index].url,
                    			dataType: 'html',
                    			success: function(data) {
                    				var $data = $(data);
                    				var customFields = $data.find('.productView-info-name');
                    				var productId = lineItems[index].productId;
                    				var sku = lineItems[index].sku;

                                    customFields.each(function(){
                                        if ($(this).text().trim() === 'ProductID_' + sku + ':') {
                                            productId = $(this).next('.productView-info-value').text();
                                        }
                                    });

                                    urlData.push(productId + ':' + lineItems[index].quantity);

                                    if (index < lineItems.length - 1) {
                                        getUrlData(++index);
                                    } else {
                                        var checkoutUrl = 'you.must.define.a.checkout.url?products=' + urlData.join(';');
                                        console.log(checkoutUrl);
                                        window.location.href = checkoutUrl;
                                    }
                    			}
                    		})
                    	}

                    	if (typeof lineItems === 'object' && lineItems.length > 0) {
                    		getUrlData(0);
                    	}
                    }
                });
            }
        });
    });
</script>
  • Navigate to Storefront → My Themes → Advanced → Edit Theme Files.

  • Paste the code snippet at the end of /templates/layout/base.html file, before the ending </body> tag.

  • Replace the text you.must.define.a.checkout.url with the URL of your CRM checkout page (see below)

  • Save and apply the theme changes

  • Test the redirect

Accessing Your Checkout URL:

Select the Settings option on your FunnelKonnekt Checkout Champ checkout page:

This will open the page configuration panel on the right side of the builder.


Define the Published Page Name (slug) for your checkout page. Tab off the field to save.


At the bottom, mark this checkout page as the Default Page.

Then close the panel and Publish the funnel.

Select the page Settings once more:

Copy the entire Live URL and replace you.must.define.a.checkout.url in the code snippet above.