Shopware 6 для B2B-канала: решение с доказательствами

Оптовому поставщику продуктов нужен был онлайн-канал заказов. Первая попытка, самописная платформа на Next.js и Fastify, заморожена. Вопрос стоял так: брать готовый Shopware 6 или писать своё дальше. Ответ надо было не угадать, а доказать.

Что сделано

  • Требования и договор обмена с 1С 7.7 перенесены из замороженного проекта. Они от платформы не зависят
  • 47 спецификаций поверх плана внедрения, с цепочкой требование → спецификация → доказательство
  • Fit-gap по каждому подтверждённому требованию, вместе с коммерческой рамкой и тремя главными рисками
  • Шесть проверок с заранее объявленными условиями прохождения и правилом не трогать vendor
  • Три дополнения написаны исключительно через задокументированные точки расширения
  • Опросник для того, кто сопровождает 1С, и вопрос владельцу про розницу, оба готовы к пересылке

Результат

  • Вердикт: GO с одной оговоркой
  • Пройдено: среда; ввоз каталога из поддельной 1С с идемпотентным upsert; цена B2B в списке, карточке, корзине и заказе 14 из 14; первенство акций и округление; заказ → 1С при потерянном ack и без сети 10 из 10; склад и наименьший заказ 9 из 10
  • Не пройдено: общая корзина организации, потеря правок в 10 попытках из 10. Это и есть та оговорка
  • Ни одной правки в каталоге vendor, поэтому доработки переживут обновление платформы

Технологии: Shopware 6.7, PHP, Docker Compose, PHPStan, 1С 7.7 (обмен XML, XSD), Python