0

I am using UPS Live Rates as my shipping plugin. The problem is on my final checkout step the {exp:cartthrob:checkout_form} tag is not working as expected.

On my /store/cart template, the customer continues on to the /store/customer_info template where they enter their billing and shipping information:

{exp:cartthrob:update_cart_form
    error_handling="inline"
    required="first_name|last_name|address|city|state|zip|shipping_first_name|shipping_last_name|shipping_address|shipping_city|shipping_state|shipping_zip"
    secure_action="yes"
    secure_return="yes"
    return="store/shipping"}

From there they go to /store/shipping which allows them to select their shipping method:

{exp:cartthrob:update_cart_form
    error_handling="inline"
    id="shipping_form"
    return="store/review"}

    {exp:cartthrob:customer_info}
        <select name="shipping_option" class="form-control">
            {exp:cartthrob:get_shipping_options shipping_name="shipping_ups" class="form-control"}
                <option value="{rate_short_name}" {selected}>{rate_title} ({price})</option>
            {/exp:cartthrob:get_shipping_options}
        </select>
    {/exp:cartthrob:customer_info}
{exp:cartthrob:update_cart_form}

After that, they are taken to /store/review where they can review their information before entering their credit card information and submitting payment.

The problem is that the {exp:cartthrob:checkout_form} tag on this page doesn't output anything if the live_rates parameter is set to "yes".

{exp:cartthrob:checkout_form
    error_handling="inline"
    required="first_name|last_name|address|city|state|zip|shipping_first_name|shipping_last_name|shipping_address|shipping_city|shipping_state|shipping_zip|email_address"
    live_rates="yes"
    secure_action="yes"
    secure_return="yes"
    return="store/order_info"
{/exp:cartthrob:checkout_form}

If I completely remove the live_rates parameter, this tag outputs everything just fine.

But my understanding is that this parameter is needed to ensure the customer cannot checkout if there are any errors/issues with shipping:

If you use the live_rates="yes" parameter in the checkout form, the checkout form will not allow the customer to checkout if there is a shipping error, or if the shipping requires an update. See line #20

Are there any potential issues that I need to consider when not using the live_rates parameter, or is it fine just to not use it at all?

If it's recommended to keep it there, where should I be looking at what is causing this issue? {exp:cartthrob:debug_info} doesn't seem to contain any error information that would help me here.

  • Hey there @jrrdnx - did you ever get this solved? I am having a somewhat similar issue here, but in my case, the rate is not using the shipping zip code from the customer. – Danielle LeComte Oct 12 '17 at 16:29
  • @DanielleLeComte Looking back at the code it doesn't look like I did get it updated to use the parameter in the checkout_form tag, but resorted to just checking for the existence of a shipping error ({if custom_data:shipping_error}) to prevent the checkout form from displaying completely. – jrrdnx Oct 12 '17 at 17:01
  • Thanks for your reply! Did you have to set any specifics in the code or the shipping settings to get it to use the shipping zip code vs the origination zip code? – Danielle LeComte Oct 13 '17 at 22:00

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.