How to use delivery surcharges


Buunto’s Delivery Surcharge feature lets you charge extra for particular delivery or pickup dates and time slots. Buunto automatically adds your chosen surcharge product to the cart when the customer’s selection matches your rules. This works alongside other shipping rate apps.


Step by step video:


  1. Create delivery surcharge product

First, you need to create a normal product in your shop within Shopify's admin. For example, you could create a product called "Saturday delivery" for $2.

  • Make sure it's Unlisted, published and has unlimited stock.
  • Note - you can either create multiple products or create a single product with multiple options.
  1. Assign a product to a date or time slot
  • Open Delivery surcharges, enable the feature, and click Create a new delivery surcharge.
  • Choose Any day, a weekday, or a Specific date, then choose the delivery method if applicable.
  • Under Time slots, choose Applies to all time slots or Applies to specific time slots, then select the slots.
  • Select the surcharge product, click Create, and save your settings.

Note 1 - you can make a more complex set up. Here is an example:

Note 2 - if you offer the choice between delivery, shipping, and store pickup, it's possible to set up different charges.

  1. You're all set up!

When your customer chooses a matching date and, where applicable, time slot, Buunto automatically adds the surcharge product to the cart. If they change their selection, Buunto updates or removes the surcharge accordingly.


  1. Charge extra for specific time slots

Configure your slots in Time slots first. When creating a surcharge, choose Applies to specific time slots and select one or more slots.

Choose Any day to apply the surcharge whenever those slots are available, or select a weekday or specific date to restrict it further. You can also combine this with the options that make a surcharge start or end after a number of days.

For example, select a surcharge product priced at £2, choose Local delivery and Saturday, and select your 2:30–6:30 PM slot. Customers selecting that slot on Saturdays pay the £2 surcharge.

Enable Display the surcharge cost on the widget to show the surcharge next to the time slot option:

  1. Apply the surcharge for a limited period of time

This is especially useful if you want to offer your customers an "Express Delivery" option. You could for example, have the following set up:

This means that if the customer chooses a delivery for the same day or the next day, an extra $10 will be added to their order.

For example, this is what the customer sees when making an order on Nov 24:

You can configure different surcharge rules for different situations. Buunto applies the matching rule with the highest priority, rather than adding the charges together.

There is also an option to add a "+" sign before the surcharge cost, so the customers can better understand that the surcharge price is an extra cost they have to pay:

The cutoff time parameter allows the surcharge to be pushed by one day when ordering after the cutoff time. For example, if the express delivery is set to "2 days" and the cutoff time is "18:00" then:

  • when the customer makes an order before 6 PM for a selected date 2 days away from now there won't be an express delivery charge
  • when choosing the same date after 6 PM, the express delivery charge applies.
  1. Which surcharge applies when rules overlap?

Buunto applies one matching surcharge; charges are not added together. Specific-date rules take priority over weekday rules, which take priority over Any day rules. Within the same date level, a specific-time-slot rule takes priority over an all-slots rule.

For example, a $3 surcharge for all Saturday slots and a $5 surcharge for Saturday 6–8 PM result in a $5 evening surcharge, not $8. A specific-date rule still takes priority over both.

  1. Apply the surcharge for after a limited period of time

If you want to implement the opposite setup to the previous one, you can use the "Surcharge starts after a number of days" option. This will add a surcharge after the set number of days. This will come in handy when you don't want to charge your customers for orders that will be delivered the same day or the day after but charge the other orders after the second day.

This is what your customers will see if they try to place an order on Nov 23, 2024:

The Cutoff time rule will work the same way, pushing forward one day after the cutoff is reached.

  1. How to hide the delivery surcharge product from the store

Your customers may discover the delivery surcharge product on your online store through the search bar. To prevent this, you can hide it using a product metafield.

From your store admin, follow the steps below:

  • Go to Settings > Custom data > Products
  • Click "Add Definition"
  • Name: "Hide from search engines"
  • Namespace and key: "seo.hidden"
  • Click "Select type" and choose "Integer"
  • Click "Save"

Then go to the surcharge product's Edit page, scroll down, and set "Hide from search engines" to "1".

  1. Limitations

There are a few known issues.

  • In cart mode, after selecting the date, if the customer clicks the Checkout button and returns to the cart page, the delivery charge item will be shown in the cart. However, when refreshing the page it will go away.  This is the expected behaviour as no date was selected. This shouldn't cause any real issues as the user will have to select a date again before going to the checkout pages again.
  • In product mode, the customer chooses a date before adding the product to the cart, which means that the delivery charge will be added straight away to the cart. Then when navigating to the cart, the delivery charge item will already be showing as a line item. The issue is that, at that point, the user will be able to remove the delivery surcharge item manually if they wanted to. They then will be able to proceed to the checkout without paying the charge. Unfortunately, there isn't a simple way to prevent an item from being removed from the cart. A good workaround for this issue could be to modify the template of your theme to hide the "remove" button and hide the quantity update field. However, there isn't one way to do this as every theme is different... This will require coding knowledge.
  • In product mode, if the option "Date appears deselected at first" in Widget settings is unchecked, the delivery charge might get added automatically to the cart if the first available date has a shipping charge defined. After navigating to the next page, that charge will get cleared from the cart. However, if the next page was the cart, the delivery surcharge would remain visible in the cart but would be gone after navigating to the checkout. To mitigate this issue, we recommend checking the option "Date appears deselected at first".
Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.