Pricing and Promotions Engine for a Serbian Grocer
Designed and built a clickable pricing and promotions engine for a Belgrade supermarket group with three store banners and an online shop: a price book by zone, promotions checked for overlaps, regulated caps and the 30-day "was" price before approval, and a basket simulator that shows exactly what a shopper would pay.
Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.
Dashboard, price book, promotions list, promotion detail with its checks, approval route and tabs, and the basket simulator. Every one of the 22 demo promotions opens its own detail page.
Member prices, then item promotions with the best price for the customer, then the basket threshold on the discounted total, then coupons, with combined discount capped at 50% of the base price per line.
Below cost, regulated caps, 30-day reference price, label lead time and overlaps, each shown as pass, warning or block. A blocking check stops Submit for approval.
6 price zones across 3 banners and online, 8 categories with margin bands, 22 promotions covering all 10 mechanics, 5 price change batches, 5 overlaps, a margin cap rule and 4 saved test baskets.
Javorak's prices lived in three places: the ERP held base prices, each banner's tills held their own promotion tables, and the web team re-keyed offers into the online shop by hand every week. A "3 for 2" could run in stores but not online, shelf labels were printed from a spreadsheet the night before, and the shelf, the till and the receipt disagreed several times a week. Nobody could say what a promotion would cost in margin before launch.
Tezga is one price and promotion service for about 180 stores across Javorak, Javorak Express and Cenko, and the Javorak Online shop. It holds the base price of every item by zone, runs price changes and promotions through checks and approval to an effective date, and lets planners simulate any basket against live and draft rules before anything reaches a shelf, a till or a web basket.
A grocer's price is set by its own commercial policy, Serbian consumer and trade law, temporary government caps and the way promotions combine in a basket, and it has to be identical on the shelf label, at the till and in the online basket.
Base prices, store promotions and online offers were maintained separately. Every mismatch between shelf, till and receipt is a customer complaint and a potential consumer protection problem, and nobody could trace which source was wrong.
Percentage and amount off, multibuy, X for a price, mix and match, bundles, member prices, coupons and spend thresholds can all touch the same item. Two category managers could discount the same product in the same week without knowing it.
Amendments to the Law on Trade applying from May 2026 generally require the earlier price shown in a reduction to be the lowest price applied in the previous 30 days, with shorter periods for new products and exceptions for perishables. A promotion that follows another one can no longer simply show the shelf price as "was".
The Serbian government has at times capped the retail margin or price on everyday goods for a fixed period. When that happened, the team had no way to check thousands of prices in six zones against the limit other than by hand.
Mapped 11 staff and store roles, from pricing analyst and promotions planner to compliance officer and store manager, 39 screens including a phone-first store portal, and the data model for items, zone prices, price changes, promotions, stacking rules, cap rules, label batches and served prices. Wrote down the rules the design follows: price display and unit prices under the Law on Consumer Protection, the 30-day reference price under the Law on Trade, temporary margin cap decrees, VAT-inclusive prices at 20% and 10%, fiscal receipts under the Law on Fiscalisation, pseudonymous member data under the Law on Personal Data Protection, and labels in Latin or Cyrillic script by banner.
Built 5 key screens on a production dashboard kit: the dashboard with margin against target by category, the week's price changes and promotion starts and ends, and items that need attention; the price book with one column per zone and a New price change panel; the promotions list; promotion detail with checks, approval route, overlaps and a label preview; and the basket simulator, which runs a real evaluation engine against live rules or live plus selected drafts. All actions run on local state.
Integration with the ERP (such as SAP S/4HANA or Dynamics 365) for items, costs and VAT rates, the tills and their certified fiscal module, the headless online shop, electronic shelf labels (VusionGroup, Hanshow or Pricer), store label printers, the loyalty tier lookup, a data warehouse for forecasts and Kafka events to stores and channels. Staff single sign-on, versioned prices and promotions, a served-price log traceable to the exact rules used, legal review of label wording and cap rules, and the remaining screens: calendar, full promotion builder, coupons, stacking rules, labels, compliance, reports, developers, settings and the store portal.
Each basket line lists the promotions applied and the ones considered but not applied, with the reason, such as a stacking rule or a threshold not yet reached. Selecting a line shows every evaluation step in order, and Run all checks every saved basket at once.
Promotion detail shows every check with its result next to the approval route it needs: the category owner, head of pricing for discounts above 25%, member prices and basket offers, and commercial finance when net cost passes 250.000 RSD a week. Nobody can approve their own promotion.
The As-of switcher shows every page as it will be at a chosen date and time, with scheduled changes applied and a banner while a future moment is set. The price book tints zone prices that differ from the banner's reference zone and marks scheduled changes with a clock.
Items under a regulated cap carry an Under cap chip and breaches surface on the dashboard. Overlaps are flagged where two item-level promotions meet on one shelf, or where a combined discount passes the category's deep-discount threshold.

Designed a mobile-first headless storefront for an Andorran outdoor apparel brand selling to Andorra, the EU, the UK and Switzerland, and built a clickable demo of its staff admin: storefront health, merchandising rules, a collection grid editor, CMS content status and per-market prices, taxes and legal settings.

Designed and built a clickable subscription platform for a specialty coffee roaster shipping across the contiguous US: a care workspace to skip, swap, pause, refund and cancel for subscribers, a cancel log that replays every screen a subscriber saw, and fulfilment batches that hold boxes with an unverified address, a failed payment or short stock.
Enterprise Software Engineering - Human + AI
Contact Us
© 2026 - Copyright. All Rights reserved Oceanlab
Location
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
Enterprise Software Engineering - Human + AI
Contact Us
Locations
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
© 2026 - Copyright. All Rights reserved Oceanlab