WPSlash

How to Set Minimum Order Amounts for Delivery in WooCommerce

Saturday February 21, 2026

A minimum order amount for delivery is one of the simplest settings in FoodMaster — yet getting it right has a significant impact on profitability and customer experience. Too low and you are delivering $5 orders at a loss. Too high and you are turning away customers who would have spent a little more if nudged. Here is how to configure it correctly, and how to take it further with dynamic logic in code.

Why a Minimum Order Matters

Delivery costs money. Whether you are paying your own drivers or using a third-party logistics service, each delivery trip has a fixed cost — fuel, time, wear on a vehicle. Delivering a $4 item for a $3 delivery fee might make the customer happy but almost certainly costs you money.

A minimum order amount:

  • Ensures each delivery is economically worthwhile
  • Nudges customers to add more items (improving average order value)
  • Reduces the volume of micro-deliveries that tie up drivers
  • Is expected by customers — most understand that delivery has a threshold

Step 1: Set the Minimum in FoodMaster Settings

FoodMaster minimum delivery order amount settings in WordPress admin

Go to FoodMaster → Settings → Delivery and scroll to Minimum Order Amount. Enter the minimum cart subtotal (before fees and taxes, unless configured otherwise) required for delivery. This is a flat global minimum that applies to all customers.

Click Save Changes.

When a customer’s cart total is below this amount, FoodMaster will:

  • Show a notice in the mini-cart explaining the requirement
  • Prevent the customer from selecting delivery at checkout
  • Display the shortfall amount so customers know how much more to add

Step 2: Customise the Mini-Cart Message

The default mini-cart message is functional but generic. Customise it to be more encouraging and clear with the woofood_minimum_amount_reached_message_minicart filter:

add_filter( 'woofood_minimum_amount_reached_message_minicart', 'my_prefix_minimum_message', 10, 2 );

function my_prefix_minimum_message( $message, $minimum ) {
    $cart      = WC()->cart;
    $subtotal  = $cart ? $cart->get_subtotal() : 0;
    $remaining = $minimum - $subtotal;

    if ( $remaining > 0 ) {
        return sprintf(
            'Add <strong>%s</strong> more to unlock free delivery to your door!',
            wc_price( $remaining )
        );
    }

    return $message;
}

Step 3: Set Different Minimums by Order Type

FoodMaster maintains separate minimum settings for delivery and pickup. Pickup orders typically have no minimum (or a much lower one) because there is no delivery cost involved.

  • Delivery minimum — Set in FoodMaster → Settings → Delivery → Minimum Order Amount
  • Pickup minimum — Set in FoodMaster → Settings → Pickup → Minimum Order Amount

Step 4: Dynamic Minimums in Code

Want to change the minimum based on who is ordering, when they are ordering, or where they are located? The woofood_minimum_amount_delivery_filter gives you full control:

add_filter( 'woofood_minimum_amount_delivery_filter', 'my_prefix_dynamic_minimum' );

function my_prefix_dynamic_minimum( $minimum ) {
    $now  = new DateTime( 'now', new DateTimeZone( wp_timezone_string() ) );
    $hour = (int) $now->format( 'H' );

    // During lunch (12–14):    higher minimum to protect kitchen capacity
    if ( $hour >= 12 && $hour < 14 ) {
        return max( $minimum, 20.00 );
    }

    // Registered customers: rewarded with a lower minimum
    if ( is_user_logged_in() ) {
        return max( 10.00, $minimum - 5.00 );
    }

    return $minimum;
}

Strategy: Use the Minimum to Increase AOV

Set your minimum just slightly above your current average order value to nudge customers higher. If your AOV is currently $19, try a $22 minimum. A significant portion of customers who would have ordered $19 worth will add a drink, dessert, or side to cross the threshold.

Reinforce this with a progress indicator in the mini-cart: “You are $3.00 away from minimum delivery. Add a drink?” This message, paired with a cross-sell suggestion, can increase basket completion significantly.

Frequently Asked Questions

Does the minimum apply to the total including fees and taxes, or to the subtotal?

By default, FoodMaster checks the cart subtotal (product prices before delivery fee and tax). This means the minimum is based purely on the item value, not the total amount the customer pays.

Can I set a minimum of zero?

Yes. Setting the minimum to 0 or leaving it blank removes the minimum order requirement for delivery entirely. Not recommended for most restaurants unless every delivery is profitable at any basket size.

Can I have a different minimum for different postcodes?

Yes — programmatically. Use the woofood_minimum_amount_delivery_filter and check the postcode from the customer’s WooCommerce session. For longer distances, apply a higher minimum to offset greater delivery costs.

What happens if a coupon brings the cart below the minimum?

The minimum check runs after coupons are applied, so a coupon discount could theoretically bring a cart below the minimum. To prevent this, configure your WooCommerce coupons to have a minimum cart amount condition — ensuring the coupon does not reduce the effective cart below your delivery threshold.

Wrapping Up

A well-configured delivery minimum is one of the easiest wins for any restaurant’s delivery operation. Set it at a level that makes every delivery financially worthwhile, make the shortfall obvious and actionable in the mini-cart, and use it as a gentle nudge to increase average order value. When combined with dynamic control via the filter hook, it becomes a precise tool rather than a blunt policy.

Get FoodMaster → | Support

Leave a Comment

Your email address will not be published. Required fields are marked *