← Back to all sparks
S

Shopsys Platform

E-COMM
Velocity0.0

Open-source B2B and B2C ecommerce framework

An open-source PHP commerce framework quietly rebuilding itself around B2B buyers.

b2b-commercegraphql-apirbacsymfonyframework-slimmingmulti-branch-maintenance
Current state
Shopsys Platform ships as a Symfony-based commerce framework that merchants fork and extend rather than configure. Four major lines are alive at once — 14.x as the long-lived branch, plus 17.x, 18.x and 19.x — with patch releases backporting infrastructure and dependency work to older lines months after the fact. Recent majors lean heavily on the GraphQL Frontend API, role-based access control, and storefront component cleanup.
Where it's heading
The centre of gravity has moved from storefront features to B2B mechanics: customer-user roles that gate cart manipulation and company-wide order visibility, time-limited price lists with per-product special pricing, and CSV import/export for those lists. Alongside that, 19.0.0 spends most of its changelog deleting things — components, utils, hooks, unused dependencies — which reads as a deliberate narrowing of the framework's surface before the next major. Infrastructure releases are batched separately, keeping runtime upgrades out of feature majors.
Prediction
Expect the B2B role and price-list work to keep extending into the Frontend API, and the component-removal pass in 19.0.0 to continue as a 20.x cleanup. The pace of 14.x backports suggests that branch stays supported for some time yet.

Recent moves

  1. 2mo ago

    Shopsys 19.0.0 strips components and dependencies

    The headline work here is subtraction: removed components, utils, hooks and unused imports, plus a dropped crypto-js dependency and the addition of knip for dead-code detection. Real changes exist around the edges — GoPay notifications behind HTTP auth, colour parameters that accept images instead of hex, an SEO audit pass — but this release mostly narrows the framework's surface rather than widening it.

    View source ↗
  2. 5mo ago

    Shopsys 14.5.1 moves the long-lived branch to Symfony 6

    A patch on the 14.x line that carries a real platform move — the Symfony 6 upgrade — alongside pinned jQuery, test fixes, and an image pipeline change that stops PHP from reprocessing and degrading images. That a Symfony major lands in a patch release on the oldest maintained branch says a lot about how long Shopsys expects merchants to stay there.

    View source ↗
  3. 7mo ago

    Shopsys 18.0.0 adds form, stock and domain controls

    Incremental storefront and admin work: a multiselect component, reworked form validation, banner-slider accessibility, and factories behind every DataSourceInterface implementation with correct textual collation. The operationally interesting items are the guard against exceeding available stock when negative stock is disabled, and domain configuration via path fragment — both aimed at multi-domain merchants.

    View source ↗
  4. 8mo ago

    Shopsys 14.5.0 is a runtime upgrade batch

    Entirely infrastructure: PostgreSQL to 17.4, Nginx to 1.29, Redis, RabbitMQ, Elasticsearch and Kibana bumps, backend Node from 16 to 24, and removed Docker deprecations. Nothing here changes what a shopper or admin sees, but it keeps the 14.x branch on supported runtimes — consistent with the pattern of isolating infra work from feature majors.

    View source ↗
  5. 8mo ago

    Shopsys 17.0.1 patches the new RBAC layer

    A fix-only follow-up to 17.0.0, almost all of it correcting the role system that release introduced: permission checks with single roles, superadmin behaviour, role resolution independent of request context, and Frontend API roles relocated into the framework bundle. The concentration of fixes in one subsystem shows where 17.0.0's ambition outran its testing.

    View source ↗
  6. 10mo ago

    Shopsys 17.0.0 turns the platform toward B2B selling

    ⚡ SPARK

    This is the release where the B2B thesis becomes concrete: customer-user roles that control who can manipulate a cart, place an order, or see every order in their company; time-limited price lists with per-product special prices; CSV import/export for those lists; automated category filters; and search inside the administration. Everything the later releases refine traces back here.

    View source ↗