Connecting 1C-Bitrix to Deal.by: Automated YML Feed and Synchronization
Updating prices manually on Deal.by risks bans for outdated data. Automatic integration of 1C-Bitrix solves this: the YML feed is generated every hour, prices and stock are always fresh. Pricing errors drop by 95%, and catalog update time shrinks from several hours to 15 minutes. Integration cost is calculated individually, ensuring guaranteed data accuracy. Certified 1C-Bitrix specialists with 5+ years experience. Contact us for a quick integration start.
Why YML is the Standard for Deal.by?
Deal.by accepts feeds in YML (Yandex Market Language) format — the same XML format used by Yandex.Market. This simplifies things: if a store already has a feed for Yandex.Market, the basic structure can be reused. However, Deal.by has its own requirements for additional parameters.
What Does a Deal.by Feed Look Like?
Minimum offer structure in Deal.by YML:
<offer id="12345" available="true"> <url>https://mystore.by/catalog/product-123/</url> <price>149.90</price> <currencyId>BYN</currencyId> <categoryId>42</categoryId> <picture>https://mystore.by/img/product-123.jpg</picture> <name>Название товара</name> <vendor>Бренд</vendor> <description>Описание товара</description> <param name="Цвет">Красный</param> </offer> The currency for the Belarusian market is BYN (Belarusian dollar). If the Bitrix catalog is maintained in USD or USD, the feed requires conversion at the current exchange rate. According to the National Bank of the Republic of Belarus, the official BYN exchange rate is updated daily. The agent must fetch the current rate before feed generation.
Setting Up Feed Generation on Bitrix
Bitrix does not have a built-in module for Deal.by, but the YML feed for Yandex.Market is generated by the standard module catalog.export. We adapt this approach for Deal.by. The documentation on the standard catalog.export module helps understand the basic principles.
We create a custom export handler that inherits \Bitrix\Catalog\Export\Setup. We override the following methods:
-
getTemplate()— XML document template for Deal.by -
getOfferFields()— set of offer fields with infoblock property mapping
Product properties from b_iblock_element_property are mapped to <param> tags in XML. Some properties require normalization — for example, "Color: Red/red/RED" should be unified to the same case, otherwise filtering on Deal.by will work incorrectly.
Feed generation is launched by an agent once per hour (or more often for stores with rapidly changing prices). The feed is saved to upload/ with public access — Deal.by periodically retrieves it via URL.
Step-by-Step Export Setup Instructions
1. Create an export profile in the admin panel (Settings > Export). 2. Select the "Yandex.Market" type as a base. 3. In the handler file, replace the XML template with the one required by Deal.by. 4. Configure mapping of infoblock properties to `` tags. 5. Set an agent with a 1-hour interval. 6. Validate the feed using the "YML Validation" tool.Deliverables
- Documentation: Complete setup guide and YML feed specification.
- Access: Admin rights to the Bitrix site and Deal.by account for configuration.
- Training: One-hour online session for your employees.
- Support: 30 days post-release support for any issues.
Data Transferred
The feed includes product name, price, description, images, characteristics, and stock. Additional custom parameters can be added via <param> tags. No separate module required — we use the standard Bitrix export (catalog.export) adapted to Deal.by requirements. This simplifies maintenance and avoids extra module purchases.
Price and Stock Synchronization
For Deal.by, feed accuracy is critical: if the feed price is lower than the real one, the platform may penalize the store. Therefore:
- The feed includes only products with non-zero stock — the
available="true"tag is set via check onb_catalog_product.QUANTITY > 0. - Products without stock are included with
available="false"— they remain in the Deal.by catalog but are marked as unavailable. This is better than complete removal: review history and rating are preserved. - Prices are taken from the "retail" price type (
b_catalog_pricewithCATALOG_GROUP_ID = 1). If multi-currency is used, convert to BYN via the current NBRB rate.
Category Mapping to the Deal.by Tree
Deal.by has its own category tree. The store must map its categories to the platform's categories. This is done through the feed management section: a mapping table your_section_id → deal_by_category_id.
If mapping is not configured, products fall into the "Miscellaneous" category and are virtually unfindable through the platform's search.
Comparison of Feed Generation Approaches
| Parameter | Standard Yandex.Market Module | Adapted for Deal.by |
|---|---|---|
| Implementation time | 1–2 days | 3–7 days |
| Support for Deal.by parameters | Partial | Full |
| Category mapping | YML only | Full mapping |
| Currency conversion | No | Yes (BYN) |
Time Estimates
| Task | Timeline |
|---|---|
| Setting up YML feed for Deal.by | 3–7 days |
| + BYN currency conversion + stock updates | 1–2 weeks |
| + Full category mapping (100+ sections) | 2–3 weeks |
Cost is calculated individually after analyzing the catalog structure and current export settings.
We have over 5 years of experience in Bitrix integrations. We've completed 50+ projects for Belarusian stores. Get a consultation to evaluate your store — contact us.







