Federico Aliprandi Setup
Cinema version IT/EN

SSD · Slot 01 · Save file

Crossplay

a.k.a. Reverse Shot Cinema version ›

The online shop of a perfumery chain: over 4,000 products whose prices and stock live in SAP Business One, and a shop that must mirror them without anyone touching a spreadsheet.

  • Magento 2
  • Hyvä
  • SAP Business One
Sector
Beauty and fragrance, multi-brand retail
Period
Nov 2024 — today
Role
Hyvä front end and catalogue sync from SAP
Team
4 developers; more than half of the commits are mine
01 · Bug report

The problem

Thousands of items, colour variants, prices and availability that change every day in the ERP.

A sync error means an order that can't be fulfilled, or a product that disappears from the site for no reason.

02 · Patch notes

The technical choice

  1. Patch 1.0.0

    A shop in six weeks

    Between November and December 2024 we built the shop on Magento 2 and Hyvä: I handled listings, product page, menu, search and mobile.

  2. Patch 1.1.0

    Deltas, not dumps

    Through the SAP Service Layer only items changed since the last run are read; comparing them with Magento sends only the differences to the jobs.

  3. Patch 1.2.0

    One job per data type

    Items, prices, quantities, stock and new products each have their own job and schedule, from every 5 minutes to once a day.

  4. Patch 1.3.0

    The emergency button

    A Magento admin module runs a manual import for a list of SKUs, with reindexing, and dedicated scripts find orphan variants and misaligned brands.

  5. Patch 1.4.0

    In-store pickup

    Store locator and pickup in the chain's 7 stores, tied to stock levels.

03 · Pipeline

How it works

  1. 0x01 SAP Business One Service Layer · changes only
  2. 0x02 PHP sync compared with Magento
  3. 0x03 Diff CSVs items, prices, quantities
  4. 0x04 Import jobs Magento 2 · Hyvä
  5. 0x05 Reindex shop in sync
04 · Benchmark

In numbers

Slot 02 · nightly-build.sav Nightly Build Paints, insulation and tools for trade professionals Load the next save ›