Миграция сайта со Shop-Script (Webasyst) на 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Миграция сайта со Shop-Script (Webasyst) на 1С-Битрикс
Средняя
~1-2 недели
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1167
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    563
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    743
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Миграция сайта со Shop-Script (Webasyst) на 1С-Битрикс

Shop-Script — eCommerce-компонент платформы Webasyst — имеет хорошо структурированную базу данных и API. Переход на 1С-Битрикс обычно обусловлен масштабированием бизнеса: нужна интеграция с 1С, расширенная логистика или функционал, выходящий за рамки возможностей Shop-Script.

Структура данных Webasyst/Shop-Script

Webasyst использует таблицы с префиксом shop_ (в MySQL-базе). Основные:

  • shop_product — товары: id, name, url, summary (анонс), description, price, status
  • shop_product_skus — торговые предложения (SKU): вариации с ценой и остатками
  • shop_product_features — характеристики товаров (аналог свойств инфоблока)
  • shop_product_features_values — значения характеристик
  • shop_category — категории
  • shop_order — заказы
  • shop_order_items — состав заказов
  • shop_customer — покупатели (связана с таблицей contact фреймворка Webasyst)
  • shop_product_images — изображения

Webasyst также имеет REST API (появился в версии 2.x), через которое можно получить данные без прямого доступа к базе.

Получение данных через API Shop-Script

// Пример запроса к API Webasyst
$url = 'https://yourstore.ru/api.php';
$response = file_get_contents($url . '?method=shop.product.getList&access_token=' . $token);
$products = json_decode($response, true)['response'];

API возвращает товары с полным набором данных, включая SKU и характеристики. Это предпочтительный метод, если нет прямого доступа к БД.

Характеристики товаров

Shop-Script поддерживает типизированные характеристики: строка, число, цвет, выбор из списка, дата. Структура маппится на свойства инфоблока Битрикс:

Shop-Script тип Битрикс тип свойства
varchar S (строка)
double N (число)
color S (строка, формат #rrggbb)
select L (список)
date D (дата)
boolean L (список Да/Нет)

Характеристики с типом «цвет» в Shop-Script имеют специальный рендеринг — в Битрикс аналог реализуется через визуальное редактирование свойства типа L с HTML-кодом цвета.

SKU и вариации

Shop-Script хранит торговые предложения в shop_product_skus с полями: id, product_id, name, price, count, sku (артикул). Привязка к характеристикам-вариаторам — через shop_product_skus_features.

В Битрикс это торговые предложения модуля каталог. Каждый SKU из Shop-Script → отдельное торговое предложение с соответствующими свойствами.

Клиентская база и заказы

Покупатели в Webasyst хранятся в двух таблицах: contact (общая, для всего фреймворка) и shop_customer (расширенная для Shop-Script). В contact есть: name, email, поля адреса.

SELECT
    c.id,
    c.name,
    ce_email.value AS email,
    ce_phone.value AS phone
FROM contact c
LEFT JOIN contact_data ce_email ON c.id = ce_email.contact_id AND ce_email.field = 'email'
LEFT JOIN contact_data ce_phone ON c.id = ce_phone.contact_id AND ce_phone.field = 'phone'
WHERE c.id IN (SELECT contact_id FROM shop_customer);

Покупатели создаются в Битрикс через CUser::Add(). Пароли не переносятся — только email и профильные данные. При первом входе предлагается сброс пароля.

Интеграция с Webasyst-приложениями

Если сайт использует другие приложения Webasyst (Blog, Photos, Helpdesk) — их данные мигрируют отдельно: блог → инфоблок, фотогалереи → фотогалерея Битрикс или инфоблок с изображениями.

Типичные сроки

Каталог Срок
до 1 000 товаров, простая структура 2–4 недели
1 000–10 000 товаров, характеристики, SKU 4–8 недель
10 000+ товаров, заказы, интеграции 2–4 месяца

Шаблон сайта разрабатывается на Битрикс с нуля — темы Webasyst несовместимы.