Представьте: вы продаёте крафтовые свечи через свой интернет-магазин на WordPress. Средний чек — 1200 рублей. Доставка стоит 350. Клиент добавляет свечу за 900, видит итоговую сумму 1250 и… уходит. Ему жалко отдавать почти 30% стоимости заказа на доставку. Знакомая история?

Теперь другой сценарий. Тот же клиент видит баннер: «Бесплатная доставка при заказе от 2000 ₽». Он берёт две свечи вместо одной. Средний чек вырастает до 1800, а через пару месяцев стабилизируется на отметке 2200–2500. Вы тратите те же 350 рублей на доставку, но маржа компенсирует это с лихвой.

Именно так работает условная логика доставки — правило, при котором стоимость доставки становится нулевой при достижении определённой суммы заказа. Казалось бы, мелочь. Но для интернет-магазина на WooCommerce это один из самых мощных инструментов повышения среднего чека без дополнительного трафика.

Почему правило «бесплатная доставка от суммы N» — must-have для любого интернет-магазина

Давайте без воды. Вот цифры, которые говорят сами за себя:

  • По данным Baymard Institute, 48% покупателей бросают корзину из-за слишком высокой стоимости доставки.
  • Исследования ComScore показывают, что 61% покупателей готовы добавить товары в корзину, чтобы получить бесплатную доставку.
  • Average order value (AOV) в магазинах с порогом бесплатной доставки в среднем на 15–30% выше, чем без него.

Это не теория. Это статистика, которую подтверждает практика десятков тысяч онлайн-магазинов по всему миру. Правило бесплатной доставки от пороговой суммы — это психология: люди не хотят платить за «воздух» (доставку), но охотно тратят больше на товары, которые получат на руки.

Как определить пороговую сумму

Золотое правило — порог должен быть на 20–30% выше вашего текущего среднего чека. Если средний чек 1500 рублей, ставьте порог на 1800–2000. Если средний чек 5000 — порог 6000–6500.

Слишком низкий порог — вы теряете маржу на доставке. Слишком высокий — клиент не видит реального пути к бесплатной доставке и не мотивирован докупить. Нужен баланс.

Как настроить бесплатную доставку от суммы заказа в WooCommerce

WooCommerce из коробки умеет работать с этим правилом — хотя и немного нелогично. Вот два способа: через настройки и через код.

Способ 1: через встроенные настройки WooCommerce

  1. Перейдите в WooCommerce → Настройки → Доставка.
  2. Выберите или создайте зону доставки.
  3. Добавьте метод доставки «Бесплатная доставка».
  4. В настройках метода выберите условие: «Минимальная сумма заказа».
  5. Укажите пороговую сумму.
  6. Сохраните.

Всё работает. Но есть нюанс: если у вас несколько методов доставки (курьер, почта, пункт выдачи), то бесплатная доставка будет применяться ко всему заказу, а не к конкретному методу. Для базового сценария — самое то. Для сложной логики — читаем дальше.

Способ 2: настройка через хук WooCommerce (для гибких сценариев)

Допустим, вы хотите, чтобы бесплатная доставка работала только для курьерской доставки и только для определённых категорий товаров. Или чтобы пороговая сумма зависела от региона. В таких случаях нужен код.

Добавьте этот фрагмент в файл functions.php вашей дочерней темы или в отдельный плагин-сниппет:

add_filter( 'woocommerce_package_rates', 'conditional_free_shipping_by_total', 10, 2 );

function conditional_free_shipping_by_total( $rates, $package ) {
    // Пороговая сумма для бесплатной доставки
    $free_shipping_threshold = 2000;

    // Получаем сумму товаров в корзине (без доставки и налогов)
    $cart_total = WC()->cart->get_subtotal();

    if ( $cart_total >= $free_shipping_threshold ) {
        foreach ( $rates as $rate_id => $rate ) {
            // Обнуляем стоимость только для Flat Rate
            if ( 'flat_rate' === $rate->method_id ) {
                $rates[ $rate_id ]->cost = 0;
                // Обнуляем стоимость доставки по классам
                if ( ! empty( $rates[ $rate_id ]->cost ) ) {
                    $rates[ $rate_id ]->cost = 0;
                }
            }
        }
    }

    return $rates;
}

Этот код проверяет подытог корзины. Если сумма товаров достигает 2000 рублей, стоимость курьерской доставки (метод Flat Rate) обнуляется. Порог легко меняется — просто подставьте своё значение в переменную $free_shipping_threshold.

Добавляем информер в корзину: «До бесплатной доставки осталось N ₽»

Правило без обратной связи — половина работы. Клиент должен видеть, сколько ему не хватает до бесплатной доставки. Это мощнейший триггер докупить.

add_action( 'woocommerce_before_cart', 'free_shipping_progress_message' );

function free_shipping_progress_message() {
    $threshold   = 2000;
    $cart_total  = WC()->cart->get_subtotal();
    $remaining   = $threshold - $cart_total;

    if ( $remaining > 0 ) {
        $message = sprintf(
            '🛒 До бесплатной доставки осталось добавить товаров на <strong>%s ₽</strong>.',
            number_format( $remaining, 0, '', ' ' )
        );
        wc_add_notice( $message, 'notice' );
    } else {
        wc_add_notice( '🎉 У вас бесплатная доставка!', 'notice' );
    }
}

Теперь в корзине клиент видит конкретное сообщение: «До бесплатной доставки осталось добавить товаров на 450 ₽». Это работает как навигатор — показывает чёткий путь к цели.

Распространённые ошибки при настройке условной доставки

Я видел десятки магазинов, где бесплатная доставка формально настроена, а средний чек не растёт. Разберём типичные проблемы.

Ошибка 1: порог рассчитан от итоговой суммы с учётом скидок

WooCommerce по умолчанию считает подытог (get_subtotal()) от суммы до применения скидок. Если вы используете купоны, клиент может попасть в ситуацию, когда после применения купона сумма падает ниже порога, а доставка вдруг становится платной. Неприятный сюрприз.

Решение: используйте WC()->cart->get_total( 'edit' ) или отдельную проверку после применения скидки. Протестируйте сценарий с купоном вручную.

Ошибка 2: порог слишком высокий

Я встречал магазины, где бесплатная доставка начиналась от 10 000 рублей при среднем чеке в 2 000. Клиент смотрит на этот порог как на что-то недостижимое и игнорирует правило. Мотивация — ноль.

Ошибка 3: нет визуального прогресса

Бесплатная доставка работает только когда клиент осознаёт её наличие. Баннер на главной, информер в корзине, подсветка на странице товара — без этих элементов правило теряет 70% эффективности.

Ошибка 4: забыли про мобильную версию

На десктопе информер виден. На мобильном он может «утонуть» между блоками. Проверяйте отображение на экранах 320–414 px. Время проверки — 2 минуты. Эффект от правильного размещения — месяцы роста среднего чека.

Продвинутые сценарии: когда базового правила недостаточно

Разные пороги для разных зон доставки

Доставка по Москве дешевле, чем в регионы. Логично, что и порог для бесплатной доставки может отличаться. В этом случае создаёте отдельные зоны доставки в WooCommerce, к каждой привязываете свой метод «Бесплатная доставка» со своим порогом.

Бесплатная доставка только для определённых товаров

Вы продаёте мебиль и аксессуары. Диван весит 50 кг — бесплатная доставка для вас убыточна. А вот мелкие аксессуары — пожалуйста. В этом случае используете хук woocommerce_package_rates с проверкой товаров в корзине по категориям или классам доставки.

add_filter( 'woocommerce_package_rates', 'free_shipping_for_specific_categories', 10, 2 );

function free_shipping_for_specific_categories( $rates, $package ) {
    $threshold          = 1500;
    $allowed_categories = array( 'accessories', 'decor' ); // slug категорий
    $cart_total         = 0;
    $has_allowed        = false;

    foreach ( $package['contents'] as $item ) {
        $product_id = $item['product_id'];
        $terms      = wp_get_post_terms( $product_id, 'product_cat', array( 'fields' => 'slugs' ) );

        if ( array_intersect( $allowed_categories, $terms ) ) {
            $cart_total += $item['line_total'];
            $has_allowed = true;
        }
    }

    if ( $has_allowed && $cart_total >= $threshold ) {
        foreach ( $rates as $rate_id => $rate ) {
            if ( 'flat_rate' === $rate->method_id ) {
                $rates[ $rate_id ]->cost = 0;
            }
        }
    }

    return $rates;
}

Прогрессивная шкала доставки

Вместо бинарного «платно / бесплатно» можно сделать плавное снижение стоимости:

  • Заказ до 1000 ₽ — доставка 400 ₽
  • Заказ 1000–2000 ₽ — доставка 250 ₽
  • Заказ от 2000 ₽ — доставка бесплатно

Это мотивирует клиента на каждом этапе. Из 1000 до бесплатной — три шага, каждый из которых кажется достижимым.

Как измерить, работает ли правило

Любую настройку нужно проверять цифрами. Вот что отслеживать:

  • Средний чек (AOV) до и после внедрения. Рост на 15–25% в первые 2–3 месяца — хороший знак.
  • Процент заказов с бесплатной доставкой. Если 90% заказов попадают под бесплатную — порог слишком низкий. Если 5% — слишком высокий. Идеально 30–50%.
  • Конверсия корзины. Смотрите, не выросла ли доля брошенных корзин — возможно, информер отвлекает.
  • Доход с доставки. Вы теряете часть выручки на бесплатной доставке, но рост AOV должен это компенсировать.

Для анализа используйте встроенную аналитику WooCommerce или подключите Google Analytics с отслеживанием событий добавления в корзину и оформления заказа.

Чек-лист: что проверить после настройки

Перед запуском убедитесь, что всё работает корректно:

  • Тестовый заказ ниже порога — доставка платная
  • Тестовый заказ ровно на пороге — доставка бесплатная
  • Тестовый заказ с купоном — поведение корректное
  • Информер в корзине отображается на десктопе и мобильных
  • Бесплатная доставка отображается на странице оформления заказа
  • Email-уведомление о заказе корректно показывает стоимость доставки

Маленькое правило — большой эффект

Условная логика доставки с порогом бесплатной — это, пожалуй, самый быстрый способ увеличить средний чек в интернет-магазине. Не нужно запускать рекламу, искать новых поставщиков или перекраивать ассортимент. Достаточно одной настройки и пары строк кода.

Суть проста: клиент чувствует, что выигрывает, когда не платит за доставку. А вы выигрываете, когда он докупает на лишнюю тысячу-другую. Взаимовыгодный обмен.

Мы в WeNesis реализ

Добавить комментарий

Разработка сайтов на Wordpress