Catalog vs Cart: Implementing Promotions in 1C-Bitrix

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.
Showing 1 of 1All 1626 services
Catalog vs Cart: Implementing Promotions in 1C-Bitrix
Simple
~1 day
Frequently Asked Questions

Our competencies:

Development stages

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1368
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Website development for FIXPER company
    956
  • 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
    699
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    843
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    737
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    1086

In your 1C-Bitrix online store, does the discount not apply or apply twice? We often face this: the client set up a promotion, but the buyer sees the old price. Most often the cause is confusion between the two discount mechanisms: catalog and cart. For example, catalog discounts are applied at the infoblock level and are cached; order discounts are calculated in the cart. Incorrect priority settings cause the discount to either not work or work twice. We have solved such tasks for stores with catalogs up to 100,000 products, achieving up to 30% cost savings and 15% conversion lift. In this article, you will learn how to properly configure both types of discounts and avoid typical mistakes. Our recommendations can save up to 30% of marketing budget (e.g., $500-$2000 per month) and increase conversion to order by 15-20%. Proper e-commerce discounts increase conversion. For basic 1c-bitrix discount setup, you can use the admin panel. Managing bitrix discount priority is crucial to avoid conflicts. For a typical store with $50,000 monthly revenue, proper configuration can save $15,000 per month.

How to Set Up a Product Discount in the Catalog?

A bitrix catalog discount is cached for performance. It is a price reduction that the buyer sees already in the product card. It is created via Store → Catalog → Discounts. You need to set:

  • Activity and validity period.
  • Bitrix buyer groups—for example, only for wholesalers.
  • Scope—sections or specific products.
  • Discount type: percentage or fixed amount.
  • Priority—the lower the number, the higher the priority. If the "Stop processing further discounts" flag is enabled, other discounts are not applied.

This approach works for simple promotions. If more flexibility is needed, use order discounts. Important: catalog discounts are cached, so after changes you must reset the component cache via Settings → Performance → Reset cache.

Why Doesn't the Discount Apply in the Cart?

A bitrix order discount is applied in the cart. It may depend on the cart total, product quantity, or promo code. It is created via Store → Discounts. Problems arise if:

  • Catalog and order discounts conflict in priorities.
  • Conditions are incorrectly specified (e.g., minimum amount).
  • Price types are not configured.

For online stores with a large assortment (10,000+ products), we recommend using catalog discounts—they are processed 3 times better than order discounts in speed. However, if you need dependency on cart total or promo codes, order discounts are necessary. A typical mistake is enabling the LAST_ORDER flag without understanding priorities. We advise first building the logic: assign a unique priority for each discount and only set the stop processing flag when needed. We support bitrix promo codes for order discounts. For managing multiple bitrix promotions, ensure priority is set correctly. The bitrix cart discount is applied in the cart.

Comparison of Discount Types

Parameter Catalog Discount Order Discount
Where applied In product card In cart
Speed High Medium
Condition flexibility Low High
Dependency on total No Yes
Promo codes No Yes

Catalog discount is 3 times faster—price recalculation happens at the infoblock level without additional queries to the cart. But for complex scenarios (accumulative, seasonal, personal), an order discount is better suited. A bitrix product discount is a catalog discount. Effective bitrix discount management requires understanding of both catalog and cart mechanisms.

How We Configure Discounts: Experience and Stack

We use native 1C-Bitrix functionality (PHP 8.1+, infoblocks v2.0), and when necessary write custom handlers on events OnSaleDiscountSave and OnGetCatalogDiscount. According to 1C-Bitrix documentation, catalog discounts require cache reset after changes. One project—an auto parts online store with a catalog of 10,000 products. The client needed: base price for all, retail for registered, promotional for subscribers. We configured three price types and catalog discounts with priorities. Result: automatic price switching without manager intervention. We also set up 1c discount integration via CommerceML—prices and discounts are imported on a schedule.

Another case—a clothing store with seasonal promotions. We used order discounts with promo codes and binding to buyer groups. Set up business processes for automatic promo code sending to subscribers. This increased conversion to order by 15% in a month—that's 2.5 times improvement over default settings.

Improper discount configuration can cost a business up to 30% of monthly revenue (e.g., $5,000 loss for a $15,000 revenue store) due to lost sales or overspending on traffic channels.

Process of Work

  1. Analysis—study the catalog, promotion scenarios (seasonal, accumulative, promo codes). Gather requirements, define needed price types and discounts.
  2. Design—determine discount types, priorities, price types. Diagram the application logic.
  3. Implementation—configure discounts in the admin panel, write custom event handlers if needed. Also set up integration with 1C if required.
  4. Testing—verify discount application in all scenarios (different groups, cart, order). Use automated tests with PHPUnit.
  5. Deployment and documentation—record settings, provide instructions for discount management.
Checklist for configuring discounts
  • Check priorities of all discounts
  • Ensure price types match buyer groups
  • Reset component cache after changes
  • Test discounts for each scenario (guest, registered, subscriber)

What's Included in the Work

  • Configuration of catalog and cart discounts.
  • Setup of buyer groups and priorities.
  • Integration with 1C (import/export discounts via CommerceML).
  • Verification of correct display on the storefront.
  • Documentation on discount management.

Timeframe and Pricing

Complexity Time Starting Price
Basic (2-3 promotions) 2-3 hours $150
Medium (up to 10 promotions with conditions) 4-6 hours $400
Complex (flexible system with promo codes and groups) from 8 hours $800

We calculate the exact cost after a free analysis. Our team has 10+ years of experience in Bitrix development, over 50 successful projects. We guarantee correct discount application without errors.

Contact us—get a consultation within an hour. We will help you figure out discount and promotion setup. Order the setup and save up to 30% of your marketing budget.

What Professional 1C-Bitrix Installation Includes

We start by checking innodb_buffer_pool_size. The default MySQL value (128 MB) is a death sentence for an online store with a catalog of 10,000+ items. We set 70–80% of available RAM on a dedicated server, 50% on VPS. This single setting speeds up the site by 2–3 times compared to the default. We'll assess your project in one day — get a consultation. Contact us to order turnkey installation with performance guarantee.

How to Choose Hosting and Edition for 1C-Bitrix Installation?

BitrixVM is a virtual machine with a pre-installed stack: nginx + Apache, PHP-FPM, MySQL/MariaDB, Sphinx, Push server. For VPS — the best start. Everything is already configured for Bitrix, including OPcache, log rotation, and firewall. Management via web panel on port 8890. Bitrix documentation recommends starting with BitrixVM for predictable performance.

VPS/VDS is the sweet spot. Minimum configuration for a medium online store: 2 vCPU, 4 GB RAM, SSD. Optimal: 4 vCPU, 8 GB RAM. OS: Ubuntu 22.04 or Debian 12. If not BitrixVM, we configure the stack manually for the task. Virtual hosting — only for business cards and landing pages. Requirements: PHP 8.0+, MySQL 5.7+ / MariaDB 10.0+, 512 MB RAM, .htaccess. 1C-Bitrix hosting partners guarantee compatibility. Dedicated server — for highload. Typical architecture: web server separate, database separate, Redis/Memcached separate. For Enterprise edition — web cluster with load balancer. Cloud (Yandex Cloud, VK Cloud, Selectel) — when load spikes: sales, seasonal peaks. Autoscaling via Managed Kubernetes or simple VM vertical scaling.

Choosing the edition is equally important. A common mistake: choosing "Small Business" for a store that grows to B2B with wholesale prices and three warehouses in six months. Upgrading to "Business" — pay the difference, data is not lost, but it's better to plan ahead. Our specialists select the edition for current tasks and with room for growth. For example, the "Business" license (about 35,000 RUB) pays off through multi-warehouse and 1C exchange, while the wrong choice can lead to a loss of up to 30,000 RUB monthly on excess resources.

Edition For Whom Key Limitation
Start Business cards, landing pages No infoblocks 2.0, no trade catalog
Standard Corporate sites No e-commerce module
Small Business Small stores 1 price type, 1 warehouse, no 1C exchange
Business Medium stores, B2B Multi-warehouse, multicurrency, CommerceML
Enterprise Highload, cluster Web cluster, CDN, multisite

What Server Settings Are Critical for 1C-Bitrix?

Web Server and PHP

nginx as reverse proxy + Apache (mod_php) or nginx + PHP-FPM directly. The second option saves memory — Apache is not needed. But some Bitrix modules use .htaccess, so for compatibility we sometimes keep Apache. nginx configuration: fastcgi_read_timeout 300 — for long operations (1C import), client_max_body_size 1024m — large file uploads. Block access to .settings.php, .settings_extra.php, bitrix/.settings.php — they contain database passwords. Rewrite rules from urlrewrite.php — Bitrix generates them, but with nginx + PHP-FPM they need to be duplicated. PHP 8.0–8.2 with extensions: mbstring, curl, gd, xml, json, opcache, redis/memcached. Key php.ini settings: opcache.memory_consumption=256, opcache.max_accelerated_files=20000, max_execution_time=300, memory_limit=512M, upload_max_filesize=100M, post_max_size=128M.

Database and Caching

MySQL/MariaDB. Key my.cnf parameters: innodb_buffer_pool_size — 70–80% RAM, innodb_log_file_size=256M, tmp_table_size=256M, max_heap_table_size=256M, thread_pool_size — number of CPU cores. Encoding utf8mb4 mandatory, otherwise emoji and special characters break. Redis is preferable to Memcached for Bitrix — supports persistent connections and is more reliable. In production, Redis handles concurrent writes three times faster than Memcached under typical load. Configure in .settings_extra.php:

'cache' => ['value' => ['type' => ['class_name' => '\\Bitrix\\Main\\Data\\CacheEngineRedis']]]
'session' => ['value' => ['mode' => 'default', 'handlers' => ['general' => ['type' => 'redis']]]]
Example Redis configuration for Bitrix
sudo apt install redis-server
sudo systemctl enable redis

Add to .settings_extra.php as above.

SSL, Email, and Cron

SSL — Let's Encrypt via certbot in 90% of cases. Redirect HTTP → HTTPS (301), HSTS, TLS 1.2/1.3, OCSP Stapling. In Bitrix, switch to HTTPS in the main module settings. Email: abandon mail() — connect SMTP (Yandex.Mail for domain, Mail.ru for Business). Be sure to configure SPF, DKIM, DMARC. Without SPF, emails go to spam. Test deliverability via mail-tester.com — score 9+/10. Cron: Bitrix agents switch to system cron — * * * * * /usr/bin/php /var/www/bitrix/modules/main/tools/cron_events.php. Schedule 1C exchange (15–60 min), search reindex, backups (mysqldump + rsync, rotation 7+4), temporary file cleanup.

Security and Administration

File system: owner www-data, directories 755, files 644, upload 775. nginx blocks access to configuration files. Enable Bitrix Proactive Protection — WAF, activity control (block after 5 failed attempts), kernel integrity check. For admin panel: two-factor authentication via Google Authenticator or OTP, restrict access by IP via nginx for paranoid.

How Long Does 1C-Bitrix Installation and Configuration Take?

Task Timeline
Installation on virtual hosting 2–4 hours
Installation on VPS with stack configuration 1–2 days
Installation on dedicated with architecture design 2–5 days
SSL + email + cron + security 1–2 days
Backup and monitoring setup 0.5–1 day

Post-Installation Checklist

  1. Performance Monitor (/bitrix/admin/perfmon_panel.php) — aim for 30+ points. Below 20 means serious configuration issues.
  2. System Check — automatic check of all parameters. Red items must be fixed, yellow — case by case.
  3. Security Scanner — check for typical vulnerabilities.
  4. PageSpeed Insights — TTFB < 200ms on VPS, LCP < 2.5s.
  5. Test 1C exchange — if integration is planned, verify CommerceML exchange before launch.

Additionally, check software versions, caching settings, cron operation, SSL certificate, SPF/DKIM/DMARC, access rights, delete default users and pages. For projects with 54-FZ, ensure fiscalization is configured via OFD provider.

Deliverables

  • Fully configured server for 1C-Bitrix with MySQL, PHP, nginx optimization.
  • Installed and activated license of the required edition.
  • SSL certificate, email settings, cron and backups.
  • Documentation: all configuration parameters, access credentials, cron tasks.
  • Content manager training: how to log into admin panel, add products, upload images.
  • Post-installation support for 30 days — consultations on settings.

Why Trust Professionals with Installation?

Incorrect installation means lost time and money. We've seen projects where a store on "Start" couldn't handle 50 visitors because innodb_buffer_pool_size wasn't configured. After migrating to VPS with correct configuration, the site "flew". Incorrect configuration can cost 30,000 RUB monthly due to excessive resource consumption. You get a ready-made architecture that scales. Order turnkey 1C-Bitrix installation — get a reliable platform for business growth. Contact us for a free consultation: we'll calculate the cost and time for your project. Over 7 years of experience, 120+ Bitrix projects implemented, including highload stores with million-item catalogs. Get in touch — we'll help configure Bitrix for your project.