Інтеграція 1С-Бітрікс з СберМегаМаркет
СберМегаМаркет (колишній goods.ru) працює за моделями DBS та FBS, але інтеграція влаштована інакше, ніж у Ozon та Wildberries. Основний канал завантаження товарів — XML-фід, близький за форматом до YML, але з розширеннями. Управління замовленнями — через Merchant API. Ця двоїстість (фід для каталогу + API для замовлень) вимагає налаштування двох незалежних механізмів на стороні Бітрікс.
Фід товарів: формат та вимоги
СберМегаМаркет приймає фід у форматі, сумісному з YML, але з додатковими тегами. URL фіду вказується в особистому кабінеті продавця, маркетплейс завантажує його за розписанням (зазвичай кожні 2–4 години).
Структура <offer>:
| Тег | Обов'язковий | Опис | Поле в Бітрікс |
|---|---|---|---|
<name> |
Так | Назва | NAME |
<price> |
Так | Ціна | Тип ціни каталогу |
<categoryId> |
Так | Категорія | Розділ інфоблоку |
<picture> |
Так | Фото (мінімум 1) | DETAIL_PICTURE |
<vendor> |
Так | Бренд | Властивість |
<barcode> |
Так | EAN-13 | Властивість |
<description> |
Так | Опис | DETAIL_TEXT |
<outlets> |
Так (DBS) | Залишки за точками | Склади |
<shipment-options> |
Так (DBS) | Терміни відвантаження | Налаштування |
<outlets> — ключовий тег для DBS-моделі. Містить <outlet id="ID" instock="КІЛЬКІСТЬ"/> для кожної точки продажу. ID точки створюється в особистому кабінеті СберМегаМаркет. У Бітрікс залишки беруться зі складського обліку модуля catalog або з окремої властивості елемента.
<shipment-options> — вказує, за скільки днів продавець готов відвантажити товар. Приклад: <option days="1" order-before="14"/> — відвантаження за 1 день при замовленні до 14:00. Маркетплейс використовує це для розрахунку термінів доставки покупцю.
Генерація фіду в Бітрікс
Стандартний YML-експорт у Бітрікс (catalog.export, профіль «Яндекс.Маркет») не генерує теги <outlets> і <shipment-options>. Варіанти:
1. Доопрацювання стандартного експорту. У файлі обробника /bitrix/php_interface/include/catalog_export/ модифікується шаблон генерації XML — додаються потрібні теги. Залишки підтягуються з CCatalogStoreProduct::GetList() для кожного товару.
2. Модуль із Marketplace. Готові рішення для СберМегаМаркет (наприклад, від Kooplex або RetailCRM) додають профіль експорту з підтримкою всіх специфічних тегів.
3. Окремий PHP-скрипт. Скрипт по cron генерує XML, вибираючи дані з інфоблоку через API CIBlockElement::GetList(). Переваги — повний контроль без залежності від модуля експорту.
Merchant API: обробка замовлень
API СберМегаМаркет (https://partner.sbermegamarket.ru/api/) працює через POST-запити з JSON. Авторизація — токен у заголовку.
Цикл замовлення DBS:
-
Отримання нових замовлень.
POST /api/market/v1/orderService/order/new— повертає список замовлень у статусі NEW. -
Підтвердження.
POST /api/market/v1/orderService/order/confirm— продавець підтверджує замовлення і вказує термін відвантаження. -
Відвантаження.
POST /api/market/v1/orderService/order/packing— передача трек-номеру і підтвердження відвантаження. -
Скасування.
POST /api/market/v1/orderService/order/reject— скасування з указанням причини.
На стороні Бітрікс cron-агент кожні 5–10 хвилин опитує API на нові замовлення. При отриманні:
- Створює замовлення в
Bitrix\Sale\Orderз зіставленням товарів заofferId(артикулом) або штрихкодом. - Встановлює властивості замовлення: номер замовлення СберМегаМаркет, спосіб доставки, дані покупця (СберМегаМаркет передає ПІБ, телефон, адресу).
- При зміні статусу замовлення в Бітрікс — обробник події
OnSaleOrderSavedвикликає відповідний метод API.
Оновлення цін та залишків
Через фід. Ціни та залишки оновлюються при наступному парсингу фіду маркетплейсом. Затримка — до 4 годин. Для більшості магазинів цього достатньо.
Через API (прискорене оновлення). Для товарів з великим обігом — метод POST /api/market/v1/offerService/manualPrice/save для цін та оновлення залишків через <outlets> у фіді з примусовим оновленням.
Проблема затримки залишків: якщо товар закінчився, а фід ще не оновився — маркетплейс прийме замовлення на відсутній товар. Скасування = штраф + снізження рейтингу продавця. Рішення: налаштувати генерацію фіду по cron кожні 30 хвилин та використовувати API для критичних товарів.
Категорії та модерація
СберМегаМаркет використовує власне дерево категорій. Зіставлення встановлюється в особистому кабінеті при налаштуванні фіду — для кожного <categoryId> з вашого фіду вказується відповідність категорії маркетплейса.
Модерація товарів займає 1–3 дні. Причини відхилення:
- Відсутність штрихкода.
- Некорректний бренд (немає в довіднику маркетплейса).
- Фото не відповідають вимогам (водяні знаки, колажі, текст на зображенні).
Терміни інтеграції
| Сценарій | Термін |
|---|---|
| Фід + ручна обробка замовлень | 3–5 днів |
| Фід + API замовлень, до 1000 товарів | 1 тиждень |
| Повна інтеграція: фід + замовлення + залишки + статуси | 1.5–2 тижня |







