LiteShop — an online store engine with several warehouses in the core
LIONEX's own product: a Laravel store engine with the source code, several warehouses with a different price for the same product, wholesale price levels and stock accounting in the core.

About project
LiteShop is LIONEX's own product. A modular online store engine on Laravel: the source code is handed over to the buyer, the store is installed on the buyer's server, and several warehouses with a different price for the same product, wholesale price levels and stock accounting work in the core.
The problem it solves
A store with two or three warehouses runs into the limits of a site builder sooner than the owner expects: one SKU sits in several places with a different purchase price, a dealer needs wholesale price levels on the same catalogue, and the platform gives one price per product and a monthly invoice for the right to sell. LiteShop moves that logic into the core: the buyer picks a warehouse option on the product card, the order is split automatically, and the margin is counted for each warehouse separately.
The engine removes a technical loss — recalculating stock by hand, a slow catalogue, duplicate URLs. It does not create demand and adds no search positions: those depend on the assortment, the prices and where people come from.
How it works
- Handover. The buyer receives an archive with the code and a Docker image; deployment by the instructions takes about 15 minutes.
- Modules. They are switched on with a toggle in the admin panel, and a module that is switched off loses no data.
- Theme. Colours, fonts and radii live in a settings file, with no rebuild; deeper rework goes through template overrides. The core is not touched, so updates keep installing.
- Updates. A copy is created before a module is updated, a rollback is a single action, and the store does not stop while the container is being replaced.
What is inside
- Several warehouses: an SKU across N warehouses, each with its own price, stock and delivery time.
- Stock accounting where every stock movement is a separate record with an author and a timestamp; operations run in transactions, so parallel orders do not break the stock figure.
- Nova Poshta and Ukrposhta: waybills, registers, tracking, a separate sender per warehouse.
- Payment: LiqPay, WayForPay, Monobank, cash on delivery, bank transfer; fiscalisation through Checkbox.
- Wholesale and loyalty: personal prices by customer group, bonus points, coupons of three types.
- Search on Meilisearch with Ukrainian lemmatisation; an SKU is found with spaces and hyphens.
- SEO and feeds: seven sitemaps, sixteen types of microdata, exports to Rozetka, Prom, OLX and Google Shopping.
- An admin panel with five permission sets; the “client admin” does not see the system sections.
When LiteShop is not needed
If you have one warehouse, a few hundred products and no plans for wholesale prices or custom work — renting a site builder will come out cheaper, and we say so in the first email, not after payment. It starts to make sense from two warehouses, from a need for wholesale prices, or when a site builder runs into its limits.
What is still missing
An extension store, extension points for third-party developers and a control panel for instances are in development. An English version of the storefront is planned, Rozetka Delivery and Meest are still stubs, there is no import from OpenCart, and there is no cart reservation with a timer either.
Technically
Laravel 12, Filament 3, Livewire 3, Tailwind 4, Octane on Swoole, MySQL 8, Redis 7, Meilisearch — the stack is industry standard, and any Laravel developer can pick the project up. The measurements were taken on the production of a car parts store, Hetzner cx43. 19.05.2026: first response of the home page — 167 ms, a warm catalogue page — 763 ms, the page compresses from 812 KB to 86 KB. 12.06.2026: 98.3 % Redis cache hits with zero evicted keys, and during a zero-downtime update 299 out of 300 requests answered successfully.
How it differs
Against renting a site builder: the code and the data stay with the buyer, and there is no monthly fee for the right to sell. The model here is a one-time purchase of the engine, with renting it on our hosting as the alternative. Against a theme for OpenCart: a theme changes the look on top of someone else's engine, whereas several warehouses, wholesale levels and a stock movement log are core logic. Against building your own: 42 core modules have already been tested on a live store, and the accounting has 65 tests.
How measured: 12 червня 2026 р., прод магазину автозапчастин на Hetzner cx43, Octane 8 воркерів, curl (TTFB, 19.05.2026); Redis INFO і тест оновлення без простою (12.06.2026). Заміряно час відповіді сторінок, влучання в кеш і доступність під час оновлення. Це стан конкретного проду з конкретною конфігурацією на дати замірів, а не обіцянка тих самих цифр на іншому сервері.Numbers can be verified independently — the site is open.
Measured facts
- 167 mstime to first response of the home page, cold equal to warm19 May 2026 · production of a car parts store, Hetzner cx43
- 42 modulesin the core: delivery, payment, warehouse, loyalty, SEO — each switched on with a toggle in the admin panelmodule counter in the core
- 98.3 %Redis cache hits with zero evicted keys12 June 2026 · production of a car parts store, Hetzner cx43
Comparison with the alternatives
| Criterion | LiteShop | Renting a site builder | A theme for OpenCart |
|---|---|---|---|
| What stays with you | The source code and the data on your server | The store lives on someone else's platform, the code is not handed over | A skin on top of someone else's engine, the core is not yours |
| Several warehouses | One SKU across several warehouses, each with its own price, stock and delivery time; the order is split automatically | Depends on the plan, usually one price per product | A theme does not add this — it is engine logic |
| Wholesale prices | Customer groups, several wholesale levels, personal prices per item, minimum order amounts | Usually a separate, more expensive plan | None |
| Stock accounting | Every stock movement as a separate record with an author and a timestamp; operations run in transactions with row locking | A basic stock number on the product | None |
| How the product is paid for | A one-time purchase of the engine; the alternative is renting it on our hosting | A monthly fee for as long as the store runs | A one-time purchase of the skin, the engine separately |
| Who will be able to extend it | Any Laravel developer: the stack is industry standard, with no home-made layers | Only within the settings of the platform | A developer for OpenCart |
| Catalogue search | Meilisearch with Ukrainian lemmatisation; an SKU is found with spaces, hyphens and dots | The built-in search of the platform | Depends on the engine |
What it does not do
- When LiteShop is not needed: one warehouse, a few hundred products and no plans for wholesale prices or custom work. Then renting a site builder will come out cheaper, and we say so in the first email, not after payment.
- There is no cart reservation with a timer: stock is written off when the order is placed.
- An extension store, extension points for third-party developers and a control panel for all instances are in development.
- Rozetka Delivery and Meest are still stubs, there is no import from OpenCart, an English version of the storefront interface is planned, and the multilingual feature translates the content but not the storefront itself.
- Carriers and payment gateways run on your own keys: the Nova Poshta or acquiring account is registered to the store, not to us.
Works together with
The Nova Poshta module in LEO Chat was ported from LiteShop, so both products run on the same carrier key of the store; the bot widget in the storefront and the catalogue feed for it are in progress.
Technologies
Related projects

LEO Chat — a store chatbot that shows the revenue
LIONEX's own SaaS: the bot sells in Telegram and in the widget on the site, completes orders with Nova Poshta and payment in the chat, and shows which orders came after which scenario.

Textory — AI rewriting of product descriptions
LIONEX's own SaaS: it rewrites the whole product catalogue into unique SEO descriptions. You upload a feed from Prom.ua, Horoshop or OpenCart and get a file ready to import back.

KVED → NACE 2.1-UA
A free public converter of KVED-2010 (Ukrainian activity codes) into NACE 2.1-UA: 616 codes, each with a page of its own, and recognition of codes straight from an uploaded extract from the Unified State Register (EDR).
Let's create something
similar for you
Tell us about your project, and we'll help bring your ideas to life.