Bitrix to Satu.kz Integration: Feed, Orders, API

Recently, an appliance store from Almaty approached us. They had a catalog on 1C-Bitrix with prices in dollars, but they needed to list on Satu.kz in tenge. Manual price list export took half a day daily, and orders were lost. We set up automatic integration in 2 weeks. Now the feed updates hourly, o

Our competencies:

Frequently Asked Questions

Recently, an appliance store from Almaty approached us. They had a catalog on 1C-Bitrix with prices in dollars, but they needed to list on Satu.kz in tenge. Manual price list export took half a day daily, and orders were lost. We set up automatic integration in 2 weeks. Now the feed updates hourly, orders flow directly into CRM, and conversion increased by 25%. In this article, we'll break down the integration components and how to avoid common pitfalls.

Satu.kz Feed Format

Satu.kz accepts feeds in YML (Yandex Market Language) format. The basic structure is identical to standard YML, but prices must be strictly in Kazakhstani tenge (KZT). This is critical: even if your catalog stores prices in USD, the output feed needs conversion.

Required offer fields:

  • <url> — product page URL on your site
  • <price> — price in KZT
  • <currencyId>KZT</currencyId>
  • <categoryId> — category ID from your tree (specified in the <categories> block)
  • <name> — product name
  • <available> — availability

Additional <param> parameters for specific categories increase offer clickability in filter results. They should be filled for products with sizes, colors, or other characteristics.

Setting Up Currency Conversion for Satu.kz Feed

If the store maintains prices in dollars or dollars, the feed needs conversion to KZT. The National Bank of Kazakhstan (NBK) rate is published via an open RSS: https://nationalbank.kz/rss/rates_all.xml. A Bitrix agent requests the rate once a day, saves it in b_catalog_currency, and uses it when generating the feed.

In b_catalog_currency, add the KZT currency and configure exchange rate updates. When generating the feed, take the price from b_catalog_price and convert using \Bitrix\Currency\CurrencyManager::convertCurrency(). For a catalog of 10,000 products, generation takes no more than 2 minutes.

Satu.kz API for Orders

The EVO platform provides a REST API for order management. Base URL: https://satu.kz/api/v1/. Authentication: store token in the header token: {your_token}.

Main methods:

  • GET /orders/ — list orders (filter by status, date)
  • GET /orders/{id}/ — order details
  • POST /orders/{id}/update-shipping/ — update shipping status

Orders placed via Satu.kz are created in b_sale_order in Bitrix. Customer data from the Satu order is mapped to b_sale_order_props fields. The Satu order ID is saved in a custom order field for feedback when updating statuses.

A typical mistake is not handling payment confirmation. If an order is paid on Satu.kz, the API sends a paid status. On the Bitrix side, you need to set the payment flag in b_sale_order and, if needed, launch a business process. Automation saves up to 40 hours per month on order processing.

Why Category Mapping Is Critical

Satu.kz's category tree differs from your site's catalog structure. Without a mapping table (your Bitrix category → Satu.kz category), products end up in inappropriate sections and get lost in filters. This directly impacts visibility and sales. Mapping is implemented via an HL-block or a separate database table.

Compare two approaches:

Approach Setup Time Category Accuracy Maintenance
Manual mapping 1-2 days for 5000 SKUs 80-90% Frequent errors with new categories
Automatic mapping via HL-block 3-5 days 95%+ Updated via CRM on request

Automatic mapping delivers 15% more product card visits, based on our measurements.

Feed Generation in Bitrix

An agent runs every hour and generates the XML file:

// Get products with stock $res = \Bitrix\Iblock\ElementTable::getList([ 'filter' => ['IBLOCK_ID' => CATALOG_IBLOCK_ID, 'ACTIVE' => 'Y'], 'select' => ['ID', 'NAME', 'CODE', 'DETAIL_PAGE_URL'], ]); // For each product, get price and stock // b_catalog_price JOIN b_catalog_product // Convert price to KZT // Build XML offer 

The file is saved to /upload/satu_feed.yml. The feed URL is registered in the Satu.kz personal account. You can validate correctness using the platform's built-in validator.

Special Note: Product Reviews and Ratings

Satu.kz aggregates customer reviews. The store rating affects listing position. Integration does not manage reviews directly, but timely order processing (accurate stock, correct statuses) reduces negative feedback. Experience shows that stores with fast order processing average a 15% higher rating.

What's Included in the Integration Work?

As part of the project, we provide:

  • YML feed setup with KZT conversion and category mapping.
  • REST API integration for order retrieval and updates.
  • Testing on real data: at least 100 orders to verify.
  • Documentation on agents and the exchange rate update procedure.
  • Support for 30 days after launch.

The integration budget ranges from 100,000 to 300,000 tenge depending on catalog size and logic complexity. We'll calculate the exact cost after auditing your project.

Timeline Estimates

Task Duration
YML feed setup with KZT conversion 3–7 days
+ API integration for order fetching 1–2 weeks
Full integration with category mapping and monitoring 2–3 weeks

Cost is calculated individually after analyzing the catalog structure and SKU volume. Get a consultation: contact us to assess your project.

We guarantee correct feed and order processing. Contact us to discuss details.