✈ Discuss your project
All case studies / 1C & Marketplace Integrations

Inventory from 1C syncs to Ozon, two parts aggregators, and a 1C-Bitrix online store

Industry: Auto parts and vehicle service supplierScale: 1C catalog with about 4,300 items, multiple warehousesFocus: 1C, marketplaces, integrations
4 channelsOzon, two parts aggregators, 1C-Bitrix website
30 minutesinventory sync cycle for Ozon, other channels every hour
~9,900 itemson the aggregator's live storefront, two accounts
I need something similar

Before

  • Managers updated inventory and prices on the platforms manually
  • Differences from 1C led to out-of-stock items being sold and incorrect prices
  • The sync engine had to run inside the client's network, with failures reported in Telegram

What we built

  • 1C remains the single source: the service reads inventory via OData, and the channels only receive data
  • Ozon receives inventory for three warehouses via Seller API; the client decided to manage Ozon prices manually
  • A price list for 438 items is uploaded to the aggregator's FTP on schedule
  • The 1C-Bitrix website receives CSV: price based on full cost with a 1.9 markup, products matched using the client's register
  • The second aggregator is connected via API in two accounts; after two consecutive failures, an alert is sent to Telegram

How it works

1COData, single source
→
Sync enginePython in Docker, scheduled
→
Ozon Seller APIinventory for 3 warehouses, 30 min
→
Parts aggregatorsFTP price list and API, every hour
→
1C-Bitrix websiteCSV import, price based on cost

Before and after

WhatBeforeAfter
Inventory on platformsmanual, differed from 1Cautomatically from 1C on schedule
Channels with working sync04

Result

  • The work was accepted and paid for
  • All four channels run on schedule: Ozon, two parts aggregators, and the 1C-Bitrix website
  • The second aggregator has accepted uploads to its live storefront since July 30, about 9,900 items across two accounts
  • The failure alert was tested live in the client's chat
  • The client continued with monthly support

Technology

Python1C ODataOzon Seller APIFTP1C-BitrixFastAPIDocker
What matters in a project like this. Matching website products to 1C by search code produced 463 matches, but 371 of them had a different SKU in 1C. The mapping was built from a register exported by the client, not from coincidentally matching codes.

Have a similar project?

Describe it in two lines in Telegram. We'll explain how we'd approach it, how long it would take, and what it would cost.

Message me on Telegram

Similar case studies