Setting up discounts on 1C-Bitrix products

Our company is engaged in the development, support and maintenance of Bitrix and Bitrix24 solutions of any complexity. From simple one-page sites to complex online stores, CRM systems with 1C and telephony integration. The experience of developers is confirmed by certificates from the vendor.
Our competencies:
Development stages
Latest works
  • image_website-b2b-advance_0.png
    B2B ADVANCE company website development
    1177
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Website development for FIXPER company
    811
  • 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
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    747
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    976

Configuring Product Discounts in 1C-Bitrix

Discounts in Bitrix are implemented through two mechanisms: the legacy sale module (order discounts) and the catalog module (product discounts). Confusion between them is a common reason why a discount either doesn't apply or applies twice. Before configuring, it's important to understand the difference.

Two types of discounts: catalog vs basket

Catalog discounts (Store → Catalog → Discounts) — applied at the product price level. The customer sees the crossed-out price in the product card. Stored in the b_catalog_discount table.

Order discounts (Store → Discounts) — applied in the basket during checkout. Can depend on the order amount, quantity of items, promo code. Stored in b_sale_discount.

For most e-commerce stores, catalog discounts are sufficient. Order discounts are needed for more complex promotional mechanics.

Creating a catalog product discount

Store → Catalog → Discounts → Add discount:

  • Activity and period of action
  • Customer groups — which groups the discount applies to
  • Catalog section or specific products — scope of action
  • Discount type: percentage of price or fixed amount
  • Price group — which price group the discount applies to
  • Priority and stop processing flag — important with multiple discounts

The "Stop processing subsequent discounts" field (LAST = Y in b_catalog_discount) prevents other discounts with lower priority from applying. Used to prevent promotional discounts from stacking with cumulative discounts.

Discounts through prices

The simplest way to show a discount is to add two price groups to the catalog: "Base price" (higher) and "Retail price" (actual). In the product card, the component will display the crossed-out base price and the current retail price. Technically not a discount, but visually works the same way.

Priorities with multiple discounts

If multiple discounts apply to a product, the order of application is determined by the PRIORITY field (lower = higher priority) and stacking mode (TYPE: 'P' — percentage, 'F' — sum). Bitrix applies discounts sequentially by default — each subsequent one is calculated from the already reduced price.

Estimated timeframes

Configuring catalog discounts for 2–3 scenarios — 2–3 hours. Complex system with multiple price groups, priorities, and conditions — 4–6 hours.