Магазин має потужний модуль витрат на доставку, в який ви можете спеціально втрутитися в розрахунок. У нашому випадку ми хочемо реалізувати наступний сценарій: Витрати на доставку за товар спочатку визначаються відповідно до ваги товару (обмеження ваги вказані). Лише за особливими винятками можна встановити фіксовані витрати на доставку для кожного товару.
Таблиця вартості доставки виглядає так:
| Вага | Вага вгору | Ціна |
| 0 кг | <3 кг | 4,99 € |
| 3 кг | <5 кг | 6,90 € |
| 5 кг | <10 кг | 9,50 € |
| 10 кг | <15 кг | 10,90 € |
| 15 кг | <20 кг | 12,90 € |
| 20 кг | <31 кг | 17,90 € |
| 31 кг | <40 кг | 49,90 € |
| від 40 кг | 49,90 € основна ціна + 0,59 € за кг |
Спочатку у вас може з’явитися ідея вибрати значення «Вага» у полі «Розрахунок вартості доставки відповідно до:» та ввести відповідні межі нижче:

Тут виникає кілька проблем: правило «від 40 кг: базова ціна €49,90 + €0,59 за кг» нелегко реалізувати, значення типу 2,999 є неточними, а опція призначення індивідуальної вартості доставки для кожного товару відсутня. Щоб вирішити цю проблему, ми спочатку створюємо нове поле вільного тексту (наприклад, «attr5») у розділі «Налаштування» > «Товари» > «Поля вільного тексту товару».:

Тепер ми заповнимо це поле вартістю в євро для всіх товарів, які мають мати окрему вартість доставки. Для десяткових чисел використовуйте крапку замість коми.:

Нарешті, ми створюємо новий спосіб доставки з важливими налаштуваннями "Розрахунок вартості доставки згідно: Власний розрахунок" та "Коефіцієнт (%): 100":

Нарешті, в розділі «Додаткові налаштування» ми зберігаємо нашу нову функцію розрахунку в розділі «Власний розрахунок»:
a359cdf87765551f0706
Ця функція бере вагу кожного товару та обчислює ціну. Три різні предмети вагою 2,5 кг коштують 14,97 євро, три рази один і той же предмет вагою 2,5 кг коштують 9,50 євро. Якщо замість цього ви хочете виконати обчислення на основі загальної ваги (з результатом 9,50 євро в обох випадках), ви лише мінімально змінюєте функцію обчислення:
a359cdf87765551f0706
Якщо дилери також мають бути включені, ви повинні бути обережними з цінами, зазначеними в запиті SQL, чисті вони чи валові значення (залежно від значень, встановлених у Основні налаштування> Налаштування магазину> Групи клієнтів> Ввести ціни брутто).
Якщо ви також хочете врахувати функцію товару «Позначити товар як безкоштовну доставку» (для кожного товару), ви звертаєтеся до стовпця b.shippingfree і встановлюєте наступний параметр у «Налаштуваннях > Вартість доставки > Розширені налаштування > Безкоштовні товари з доставкою”.:

За допомогою SQL можна вбудовувати будь-які складні запити. Доцільно підготувати остаточний запит за допомогою змінних SQL, щоб все це залишалося простим в обслуговуванні. Далі наведено зразковий приклад більш складного запиту, який розмежовує покупців магазину та роздрібної торгівлі, враховує товари безкоштовної доставки, стягує витрати на доставку лише для максимального кошика для покупок і відбирає різні шкали цін (залежно від марки):
a359cdf87765551f0706