
JMBonline: A custom e-commerce backend on top of two Shopify stores
Paints and building supplies for companies and homes in Czechia and Slovakia. A loyalty program priced from margin, Google Ads optimised for profit and accounting that adds up without manual work.
- Platform
- Shopify
- Markets
- Czechia, Slovakia
- Catalog
- Over 40,000 variants
- Migration and launch
- About 2 months
- Our apps
Globe
PayflowFeedflock
Heureka
Project overview
JMBonline moved from WooCommerce to two separate Shopify stores, one Czech and one Slovak. We moved the products, the content and the reviews, and launched both stores in about two months.
Since then we have been building a custom backend on top of them. Much of the logic lives right in Shopify data, in product, customer and order metafields. The team sees it and changes it in their own admin.

A loyalty program priced from margin
Companies, tradespeople and the public sector get cashback by turnover: Gold, Silver and Bronze.
It comes from each variant's real margin and recalculates when a price changes, so the store never gives away more than it can afford.
Paying with credit, no manual work
When a customer pays with loyalty credit, the order adjusts itself and the credit is spread over the items as a discount. Then the invoice in SuperFaktura is adjusted and marked paid, in Czechia and Slovakia alike.
Before, by hand after every credit payment
- Edit the order in Shopify
- Spread the credit over each item
- Fix the invoice in SuperFaktura
- Mark the invoice paid by hand
Now on its own, right after payment
- The order carries the discount per item
- The invoice matches the order and is paid
- Accounting has nothing to chase
Google Ads optimises for profit, not revenue
Campaigns optimised for revenue push expensive goods even when the store barely earns on them. JMBonline's campaigns learn from real profit.
Purchase prices on the order
Every order stores the purchase price of all its items at the moment of sale.
Profit as the conversion value
Google Ads gets the order's profit instead of its price and bids by it.
Cancellations and returns later
When an order is cancelled or returned, its profit is subtracted in Ads afterwards.
A store that answers before the customer asks
Search, menu, product page and cart are all custom. No third-party apps.
Search that helps before you type
The empty field cycles through hints like “PIR deska” or “Barva na dřevo”.
A click opens brands, best sellers and popular categories. While typing, results change with every letter.
A product page from price to downloads
- The delivery date changes at 7:00 and skips weekends
- Supplier goods show how many pieces are in stock and how many are on order
- Tabs for recommended products, description, downloads, specifications and reviews
Upsell after add to cart
Adding to cart opens a window with products that go with the purchase. A primer with a waterproofing coat, say.
It's built right into the theme on Shopify's recommendations, with no third-party app.
Coverage calculator
The area and the number of coats are all a customer needs to know how much paint to buy.
3 317 Kč
2 741,32 Kč bez DPH
1 151,74 Kč s DPH / m²
3 317 Kč
2 741,32 Kč bez DPH
1 151,74 Kč s DPH / m²
Same variant, cashback by level
Cashback to the crown
A guest sees how much the program would save them. Once logged in, they see the price for their exact tier, here SILVER.
A cart for companies
- Buying on a company ID with a company search
- A delivery date for the whole order
- A free shipping bar that hides for parcels over 40 kg
- The saving for the loyalty tier
Under the hood
Things the customer never sees, but the store runs on every day.
Feeds for 7+ channels
Google, Heureka, Zboží, Srovnáme, Pricemania and Meta all come from our Feedflock. Each variant can leave a channel or get its own CPC.
GPSR data
The manufacturer, its address, contact and safety warnings are filled in on the product and go straight into the feeds.
Supplier stock
Availability and lead times come from the supplier's API.
Prices from a sheet
Bulk price changes for both stores run from a Google Sheet.
Czech and Slovak linked
The same products are linked across the stores automatically, so Google pairs them right.
Daily backup
The whole catalog of both stores is backed up every day.
Ready for shopping through AI
Both stores talk to AI agents directly. An agent finds the product, works out the quantity and prepares the checkout.

termPIR AL λ 0,022 PIR desky 2 400 × 1 200 mm
★★★★★ 4.8 · 17 reviews
1 514 Kč
100 mm · 2.88 m² / pc
In stock
30-day returns
{ "@type": "Product", "brand": "termPIR", "aggregateRating": { "ratingValue": 4.82, "reviewCount": 17 }, "offers": { "name": "100 mm | 2.88 m² | ks", "price": 1514, "priceCurrency": "CZK", "availability": "InStock", "merchantReturnDays": 30, "gtin13": "5902504011825" }}
Google, ChatGPT and Gemini read the same data
Shopify Agentic
UCP and MCP run on jmbonline.cz and jmbonline.sk. The agent searches the catalog, fills a cart and starts a checkout. Only the shopper can pay.
A store description for AI
Each store has its own llms.txt and agents.md in its language. Market, currency, shipping, returns and links for agents.
Data AI can trust
Products carry shipping, returns, GTIN and seller. The company links to Heureka, Zboží and its social profiles, so AI can verify it.
„When we needed a format no preset covered, we asked AI to write the template and the feed was live within minutes.“
Our apps in this store
Alongside the custom work, the store runs apps we publish on the Shopify App Store ourselves.
Planning a similar project?
Tell us where you are and where you're headed. We'll come back with a concrete take and an estimate.



