1C-Bitrix Integration with Prom.ua (Ukraine)
Prom.ua is Ukraine's largest marketplace, where each seller has their own storefront within the platform's aggregated catalog. For Ukrainian online stores built on 1C-Bitrix, integration with Prom.ua covers two flows: exporting a product feed and receiving orders via the API. The EVO platform (parent company of Prom.ua) provides a unified API, which makes code reuse straightforward when also integrating with Satu.kz.
Prom.ua Feed Format
Prom.ua accepts feeds in YML format or its own CSV format. YML is preferred — it supports more fields and structured transmission of product attributes. Prices must be in Ukrainian hryvnias (UAH).
Differences from the standard Yandex Market YML: Prom.ua supports the <keywords> tag for each offer — a list of keywords for the platform's internal search. Populating this tag improves product visibility when searching on Prom.ua.
Also supported: the <country_of_origin> tag for products with origin marking, and <barcode> for EAN codes.
Prom.ua API
Base URL: https://my.prom.ua/api/v1/. Authentication via token: Authorization: Bearer {token} header.
Order management endpoints:
-
GET /orders/list— order list with filters by status and date -
GET /orders/{id}— order details -
POST /orders/set_status— update order status
Order statuses on Prom.ua: pending (new), received (confirmed), delivered (delivered), canceled (cancelled), draft (draft).
Ukrainian Market Specifics
Content language. Prom.ua caters primarily to a Ukrainian-speaking audience. Product descriptions in the feed are best provided in Ukrainian. If 1C-Bitrix is configured for Russian-language content, Ukrainian descriptions need to be either stored in separate infoblock properties or generated via machine translation as a temporary measure.
Prices in UAH. If the store maintains prices in USD, conversion using the NBU rate is required. NBU API: https://bank.gov.ua/NBU_Exchange/exchange_site?start=...&end=...&sort=exchangedate&order=desc&json. The rate is updated daily by a 1C-Bitrix agent.
Nova Poshta as the primary carrier. When processing orders from Prom.ua, the majority of deliveries go through Nova Poshta. If 1C-Bitrix has Nova Poshta API integration configured, the branch address from the Prom.ua order is mapped automatically to the delivery field in 1C-Bitrix.
Order Retrieval Implementation
New Prom.ua orders are polled by an agent every 5–10 minutes:
$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) {
// Check if this order has already been created
$existingOrder = findOrderByPromId($promOrder['id']);
if (!$existingOrder) {
createBitrixOrder($promOrder);
}
}
When creating an order in 1C-Bitrix, we store prom_order_id in a custom order field UF_PROM_ORDER_ID. After the order is processed in 1C-Bitrix, the status is updated on Prom.ua via POST /orders/set_status.
Stock Synchronisation 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-volume stores. Products with zero stock are set to available="false" — they remain in the catalog but are not shown in the active offer listing.
Estimated Timelines
| Task | Timeline |
|---|---|
| YML feed setup with UAH prices | 3–7 days |
| + order API integration | 1–2 weeks |
| + Ukrainian-language content and category mapping | +1–2 weeks |
Pricing is calculated individually after analysing the catalog and content requirements.







