01
Data isolation between stores
In a multi-store system, the biggest risk is one store's data ending up inside another's. Isolation is built into the database layer and covered by tests, so the boundary holds automatically on every query, rather than relying on a developer's vigilance.
02
Tracking after privacy restrictions
After iOS's privacy changes and ad blockers, browser-based tracking loses part of its signal. The fix is server-side delivery with deduplication, so ad platforms get a fuller picture of purchases and the same event is never counted twice.
03
One core, different-looking stores
Stores need to differ in look and content while running on the same core. The visual editor lets each store look its own way without splitting the core logic into separate code versions.
04
Payments across countries
In Lithuania, one buyer pays by card, another by bank transfer. Stripe and MakeCommerce are joined into a single flow, and every store has its own payout account, so money goes straight to the seller.
05
Speed for every store
Speed has to hold beyond launch day. Server-side rendering combined with automatic Lighthouse checks before every change stops speed and SEO scores from quietly degrading.
06
Email deliverability
If one store's emails land in spam, that shouldn't affect the others. Every store has its own sending configuration, so reputation is separated store by store.
07
Inventory accuracy
With several buyers checking out at once, the same item must never sell twice. Stock changes go through database-level locks, so counts stay accurate even under heavy traffic.
08
EU VAT and compliance
Cross-border trade requires VAT-payer checks and data-protection compliance. Company VAT numbers are verified through VIES, and consent and data handling are set up to GDPR.
09
Managing the system's size
A broad system with several front ends and hundreds of data models easily becomes hard to maintain. A monorepo with shared libraries and type-checking from the interface down to the database makes it possible to change the system safely.
10
Too many tools for one AI agent
An AI agent makes more mistakes when handed dozens or hundreds of separate tools. The whole admin API is condensed into eleven topics — catalog, orders, analytics and so on — each holding many actions inside it. That lets the agent find its way faster and pick the right action more precisely.
11
Search with Lithuanian letters
Store search has to find a product even when it's typed without Lithuanian letters or with a typo. Search relies on PostgreSQL's full-text search tools: "dešra" is found when typed as "desra," and minor typos are smoothed over with similarity scoring.
12
Safe handling of external links
Sellers point to external links — product photos on other sites, for example. Every such link is checked in advance so it can't be used to reach internal, non-public systems.