Widget

Making a Fee Required or On by Default

Two settings decide whether a fee starts ticked, or whether customers get a say at all. Both live in the Behavior card on Settings → Cart Widget: "Control how the toggle checkbox behaves for customers."

Two ways to make a fee less optional

Checked by default Toggle disabled
What customers see A ticked checkbox No checkbox
Can they decline? Yes, by unticking it No
Use it for Pre-ticking a fee. Shopify still asks that optional charges start unchecked Charges a buyer has no real choice about

When the fee is added is a setting. Add the charge to the cart (also in the Behavior card) defaults to When the customer clicks Check out. For a required fee, choose As soon as it applies instead: the fee is then added as soon as the cart qualifies, so it stays on checkouts that skip the Check out button, such as express buttons inside the cart or a direct checkout link. Buttons on a product page that skip the cart entirely, such as Buy it now, are covered at the end of this page.

Option 1: Check the box by default

The Behavior card on the Cart Widget settings page, with three dropdowns at their defaults: Toggle checkbox set to Enabled, Default toggle state set to Unchecked, and Show confirmation popup at checkout set to Disabled The Behavior card, shown at its defaults. Toggle checkbox decides whether customers get a choice at all; Default toggle state decides how that choice starts out.

  1. Go to Settings → Cart Widget
  2. Scroll to the Behavior card
  3. Leave Toggle checkbox on Enabled — customers can opt in/out
  4. Set Default toggle state to Checked (opt-in by default)
  5. Save

The widget now paints ticked the first time a customer sees it, using the Default Content title and description. The Dynamic Content opt-in copy is swapped in only when a customer ticks or unticks the box.

The confirmation popup switches on for you

Changing Default toggle state moves Show confirmation popup at checkout to match: Checked (opt-in by default) turns it on, Unchecked (opt-out by default) turns it off again. While the toggle starts checked, the popup is locked on. The dropdown is greyed out, with the note "Always on while the toggle starts checked", and it can't be saved off. To turn the popup off, set Default toggle state back to Unchecked (opt-out by default).

The popup asks customers to confirm their selection, names the charge and the amount, and offers Cancel and Checkout. Cancel stops checkout and returns them to the cart with the box still ticked, so anyone who does not want the fee unticks it there and checks out again.

Option 2: Remove the checkbox entirely

Set Toggle checkbox to Disabled — widget is always active. The checkbox disappears and there is no way to decline the fee. The price stays visible on the widget. Also set Add the charge to the cart to As soon as it applies so the fee is added as soon as the cart qualifies. With the default, When the customer clicks Check out, it is only added at the cart's checkout button.

The popup is cleared for you. A required fee has no checkbox, so there is nothing to confirm. Set Toggle checkbox to Disabled — widget is always active and click Save. TackOn always saves a required fee with the popup off, so you don't need to change it first.

Before you remove the choice

Shopify's guidelines say optional charges must be off by default, with no exception for fees you consider mandatory. Deciding that a charge is not optional, a legally required fee or a deposit for example, is a call you need to be able to defend. For anything a customer could reasonably refuse, keep Toggle checkbox enabled and Default toggle state on Unchecked (opt-out by default): charges added without consent can lead to App Store rejection and chargebacks.

What TackOn can't cover

  • Buy it now and other dynamic checkout buttons on product pages. These skip the cart, so no app can add the fee there. If the fee must always apply, turn them off in the theme editor: open a product page, select the Buy buttons block and untick Show dynamic checkout buttons.
  • Draft orders created in the Shopify admin. They don't run the storefront widget, so add the fee product to them by hand.

It still shows unchecked when you test it

TackOn remembers each customer's last choice in their browser, and that beats the store default. If you have ever ticked or unticked the widget in the browser you are testing in, it keeps its own state. Test in a private window, or clear your storefront's site data. For other widget symptoms, see Scheduling, Visibility & Troubleshooting.

Going deeper

For the behaviour settings in context, with the Dynamic Content opt-in and opt-out copy pairs and the full customiser walkthrough, see Designing the Cart Widget.