Setting Minimum Order Amount for B2B in 1C-Bitrix

Setting Minimum Order Amount for B2B in 1C-Bitrix Imagine: a client from the 'New Wholesale' group has a cart worth below the required minimum, but the minimum for their group is set higher. If you block checkout only at the final step, you risk losing the client. We solve this with cart warnings

Our competencies:

Frequently Asked Questions

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1415
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Website development for FIXPER company
    995
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Development based on Bitrix, Bitrix24, 1C for the company Development of an Online Appointment Booking Widget for a Medical Center
    733
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    863
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    772
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    1134

Setting Minimum Order Amount for B2B in 1C-Bitrix

Imagine: a client from the 'New Wholesale' group has a cart worth below the required minimum, but the minimum for their group is set higher. If you block checkout only at the final step, you risk losing the client. We solve this with cart warnings and flexible rules tied to user groups or companies. Our experience: 10+ years developing on Bitrix, over 50 projects with custom order restrictions. The result — transparent conditions for each client and a 30-40% reduction in cart abandonment.

Standard Approach: Single Threshold via Admin Panel

Bitrix has a built-in restriction: store settings → field "Minimum order amount". This is a single value for everyone. When attempting to place an order below the threshold, an error is displayed. This method works for simple B2C, but B2B requires flexibility.

How to Set Minimum Amount for Different User Groups?

Implemented via the OnBeforeSaleOrderAdd handler. Logic:

  1. Determine the user's group or their dealer company.
  2. Get the minimum amount from storage (module options or Highload block).
  3. Compare with $order->getPrice().
  4. If below, add an error via $event->addError().

Storage: Highload block b2b_order_limits with fields UF_GROUP_ID, UF_MIN_AMOUNT, UF_CURRENCY.

Example handler code (simplified)
\Bitrix\Main\EventManager::getInstance()->addEventHandler( 'sale', 'OnBeforeSaleOrderAdd', function (\Bitrix\Main\Event $event) { $order = $event->getParameter('ENTITY_OBJECT'); $userId = $order->getUserId(); $userGroup = \CUser::GetUserGroup($userId); $minAmount = \Bitrix\Main\Config\Option::get('module_name', 'MIN_AMOUNT_'.$userGroup[0]); if ($order->getPrice() < $minAmount) { $event->addError(new \Bitrix\Main\Error('Minimum order amount: '.$minAmount.' RUB.')); } } ); 

Why Cart Warning Matters?

Blocking at order creation is too late. The user should see an indicator directly in the cart. In the component's result_modifier.php, we calculate the difference and add a flag IS_BELOW_MINIMUM. The template shows: "Add X RUB more to reach the minimum order amount."

Comparison Table

Parameter Standard (single threshold) Custom (group minimums)
Flexibility One limit for all Different limits per group, company, category
UX Error at final step Warning in cart, ability to add more
Setup complexity 15 min in admin panel 3-5 days development
Cart abandonment reduction 0% Up to 40%

Why Single Threshold is Inefficient for B2B?

A single threshold ignores client categories. For example, beginners could have a lower threshold, while VIP dealers have no limit. This either loses small clients or misses profit from large ones. A custom solution via handler and Highload block is 5 times more flexible than the standard one.

Use Cases

Scenario Implementation method Example clients
Minimum by user groups Highload block + OnBeforeSaleOrderAdd Wholesale warehouse, distributor
Minimum by companies (custom threshold per legal entity) Bind to UF_COMPANY_ID in HL block Holding with multiple legal entities
Minimum by product categories Group items by IBLOCK_SECTION_ID Products of different price segments
Cart warning result_modifier.php + ajax All B2B stores

Minimum by Category

Sometimes the rule applies not to the entire order but to specific categories. For example, the "Fragile goods" category ships only from a minimum order amount. In the OnBeforeSaleOrderAdd handler, we group cart items by IBLOCK_SECTION_ID, extract the limit for each category from the same Highload block, and if any category falls short, add an error.

What's Included in the Work

  • Audit of current rules and calculation schemes.
  • Structure design: groups, companies, categories.
  • Development of handler and Highload blocks.
  • Improvement of cart visual part (indicator, calculation).
  • Testing of scenarios (including edge cases).
  • Documentation and training for your managers.
  • 6-month warranty.

Get a consultation on configuring flexible rules for your store — our specialists will help you choose the optimal solution.

Guarantees and Support

All completed work comes with a 6-month warranty. If your business logic changes, we quickly adapt the rules. A team of certified 1C-Bitrix specialists ensures stable operation even under high loads.

Estimated Timelines

Basic setup via interface — 1 day. Development of group minimums with cart warning — from 3 to 5 days. Timelines are refined after auditing your project. Cost is calculated individually.

Contact us for a consultation — we will help you choose the optimal solution for your B2B.