Data Exchange Between 1C-Bitrix and Prom.ua: Solutions for Ukraine

Configuring Product and Order Exchange Between 1C-Bitrix and Prom.ua Lost orders, stock desynchronization and bilingual content issues are typical problems for stores on 1C-Bitrix when entering *Prom.ua*. We have completed over 15 integrations for Ukrainian retailers, reducing manual operations b

Our competencies:

Frequently Asked Questions

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1442
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Website development for FIXPER company
    1013
  • 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
    752
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    873
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    794
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    1154

Configuring Product and Order Exchange Between 1C-Bitrix and Prom.ua

Lost orders, stock desynchronization and bilingual content issues are typical problems for stores on 1C-Bitrix when entering Prom.ua. We have completed over 15 integrations for Ukrainian retailers, reducing manual operations by 40% and speeding up order processing by 2 times. Below are technical details to help avoid mistakes.

Why Integration with Prom.ua Differs from Standard?

Prom.ua accepts a feed in YML or its own CSV format. YML is preferable — it supports more fields and structured attribute transfer. Prices are transmitted in Ukrainian hryvnias (UAH). A difference from standard YML for Yandex.Market: Prom.ua supports the <keywords> tag for each offer — a list of keywords for the platform's internal search. Filling this tag directly affects product visibility in Prom.ua search. It also supports <country_of_origin> for products with origin marking and <barcode> for EAN codes.

How the Prom.ua Order API Works

Base URL: https://my.prom.ua/api/v1/. Authentication via token: header Authorization: Bearer {token}.

Key methods:

  • GET /orders/list — list of orders with filters by status and date
  • GET /orders/{id} — order details
  • POST /orders/set_status — update order status

Order statuses: pending (new), received (confirmed), delivered, canceled, draft.

Adaptation to the Ukrainian Market

Language of content. Prom.ua has a predominantly Ukrainian-speaking audience. Product descriptions in the feed should be in Ukrainian. If 1C-Bitrix is configured for Russian-language content, you either need to store Ukrainian descriptions in separate infoblock properties or use machine translation as a temporary solution. We use the UF_UA_DESCRIPTION property in the infoblock and automatically fill it from the main description via translation API.

Prices in UAH. If the store maintains prices in USD, conversion at the NBU rate is required. NBU API: https://bank.gov.ua/NBU_Exchange/exchange_site?start=...&end=...&sort=exchangedate&order=desc&json. We update the rate daily via a Bitrix agent. Typical deviation is no more than 0.5% due to cross rate.

Nova Poshta as the main carrier. When processing orders from Prom.ua, most deliveries go through Nova Poshta. If Bitrix has integration with Nova Poshta API, the recipient's address from the Prom.ua order is automatically mapped to the delivery field in Bitrix. We configure delivery type mapping within 1 day.

How to Set Up Order Receiving: Step-by-Step

  1. Obtain the API token in your Prom.ua account.
  2. Create a user field UF_PROM_ORDER_ID in Bitrix to store the order ID.
  3. Configure an agent to periodically call GET /orders/list with a filter by status pending.
  4. When a new order is received, check it by UF_PROM_ORDER_ID and create an order in Bitrix.
  5. After processing, update the status on Prom.ua via POST /orders/set_status.

Example agent code:

$response = $httpClient->get('https://my.prom.ua/api/v1/orders/list', [ 'status' => 'pending', 'date_from' => date('Y-m-d\TH:i:s', strtotime('-10 minutes')), ]); foreach ($response['orders'] as $promOrder) { $existingOrder = findOrderByPromId($promOrder['id']); if (!$existingOrder) { createBitrixOrder($promOrder); } } 

Stock Synchronization via Feed

Prom.ua does not have a direct API for real-time stock updates — everything goes through the feed. Feed update frequency: once per hour for high-turnover stores. Products with zero stock are set with available=false — they remain in the catalog but are not shown in the active offers listing. For low-turnover stores, updating once every 3-4 hours is enough — saves server resources without losing timeliness.

Typical Integration Errors How to Avoid Them
Incorrect YML encoding (UTF-8/Windows-1251) Always use UTF-8, explicitly specify in XML header
Missing <keywords> tag Automatically generate from product name and properties
Order status conflict (pending not updated) Implement check by UF_PROM_ORDER_ID before set_status

What's Included in the Work

  • Documentation: description of the exchange schema, field mapping, operator instructions.
  • Access: API token setup, access rights to Prom.ua API and Bitrix admin panel.
  • Training: demonstration of the integration, answers to managers' questions.
  • Support: 1 month warranty (bug fixes, consultations).

Timelines

Task Timeline (working days)
Setting up YML feed with prices in UAH 3–7 days
+ Order API integration 1–2 weeks
+ Ukrainian content and category mapping +1–2 weeks
+ Nova Poshta integration +3–5 days

Cost is calculated individually after analyzing the catalog and content requirements. For a precise assessment, contact us — we will prepare a commercial proposal within one day. Our engineers have 10+ years of Bitrix experience and Prom.ua integration certificates. Get a consultation right now.