1Basis & shared assumptions
Effort ranges to follow. Workstream breakdowns, evidence and confidence ratings below are
final-draft; day ranges and costs will be added following the internal engineering review.
How the ranges are sized
- Sized from the audit's measured divergence: the 27-module drift table, 53 composer version skews, the DI/plugin surface, the Magestore estate and the integration map
- Confidence per line uses the audit's complexity scale — wider bands where the evidence is thinner
- Engineering QA included per line; PM / tech-lead overhead applies on top of route totals
Assumptions common to all routes
- Shared basket scope is within territory only
- The Daylesford delivery-matrix rebuild is separately funded and delivered multi-brand-aware (if not, Route 3 Phase 1 grows accordingly)
- Excluded, as per the audit scope: ERP/warehouse process redesign, target-state ERP builds, content production, other-territory instances
What firms these up: environment/config access (config parity, catalogue overlap, data
volumes), the Adobe health checks, and client decisions on the audit's decision register — especially Magestore,
subscriptions and content tooling.
2Route 1 — Keep both instances; shared stock purchasable directly on each store
A curated set of each brand's products becomes purchasable directly on the other site — the customer
shops cross-brand in one basket, one checkout, on whichever store they are on. Stock truth stays with the
owning brand, so sync and oversell protection are the heart of the build. No dependency on the March '27 renewal.
| Workstream | Evidence base | Confidence |
| Cross-brand navigation & merchandising — header/footer links, content slots, cross-brand campaigns |
Both sites already run content-slot tooling (Tryzens PLP slots, Magezon, Develo widgets) |
High |
| Cross-brand product listing — push a curated product set from each brand onto the other site, incl. scheduled stock sync and low-stock buffers to prevent overselling |
Xtento ProductExport + StockImport already installed on both sites; Zoe's notes anticipate limits on transferable SKUs |
Medium |
| Cross-listed order routing & fulfilment handoff — order captured on one instance, fulfilled by the owning brand |
Existing Xtento OrderExport / ShipStation flows to extend |
Medium |
| Cross-brand analytics & attribution — GTM cross-domain, journey tracking |
Yireo GTM2 aligned on both sites |
Medium |
| Optional: shared sign-on across the two instances (single customer identity) |
Two separate customer databases; no SSO today |
Low–Medium |
Stock integrity is the critical risk. The selling site holds a copy of stock it does not
own, so overselling is prevented by design, not luck: near-real-time stock sync on the existing Xtento toolkit,
low-stock buffer thresholds that pull items off sale before the last units go, and a curated, deliberately
limited SKU set — fast-moving ambient lines, never fresh/date-based delivery items. Two non-technical questions
need answering before build: merchant of record and inter-company accounting for cross-listed sales (the legal
entities stay separate), and how returns of the other brand's product are handled.
3Route 2 — Keep both instances; carry the basket between stores (CartTransfer)
The customer's basket follows them between the two sites — browse Bamford, bring the basket to
Daylesford, check out per brand. Builds directly on the Develo_CartTransfer module already
live on both sites, making this the smallest build of the three routes. Everything except the transfer plumbing
survives a later consolidation.
| Workstream | Evidence base | Confidence |
| Cross-brand navigation & merchandising — header/footer links, content slots, cross-brand campaigns |
Both sites already run content-slot tooling (Tryzens PLP slots, Magezon, Develo widgets) |
High |
| CartTransfer v2 — merge-instead-of-replace, "bring my basket" entry points, availability preflight & messaging |
Develo_CartTransfer v1.2 live on both sites; gaps known and small |
High |
| Cross-brand analytics & attribution — GTM cross-domain, journey tracking |
Yireo GTM2 aligned on both sites |
Medium |
| Optional: shared sign-on across the two instances (single customer identity) |
Two separate customer databases; no SSO today |
Low–Medium |
4Route 3 — Consolidate onto one instance, phased
Phase 1 consolidates with baskets still scoped per website; Phase 2 adds the shared basket on the
combined instance. Natural landing for Phase 1: the March '27 Magento renewal. The audit strengthened this route —
same version, cloud, frontend generation, checkout framework and core vendors.
Phase 1 — Consolidation only
| Workstream | Evidence base | Confidence |
| Target architecture & Website/Store topology design, incl. config-parity exercise |
The Website-vs-Store cart-scoping decision; needs environment access |
Medium |
| Dependency alignment — Symfony 6.4→7.4, Adyen lib v20→v27, 53 version skews, patch-set merge, Redis/RabbitMQ |
Measured in the audit's composer & platform sections |
High |
| Shared-module reconciliation — 27 drifted modules → single packages (Xtento via upgrade; Develo forks by hand) |
Drift measured per module in the audit |
High |
| Magestore estate retirement/isolation (assumes retire, per decision register) |
82 registry modules, 15 already disabled, POS suite parked |
Low–Medium |
| Functional gap decisions build-out — feeds, blog vs builder, reviews, fraud, subscriptions alignment onto SARP |
Decision register directions |
Medium |
| Integration rewiring per website — Xtento profiles, ShipStation, Streetwise, Klevu/Klaviyo/GTM |
Audit integration map |
Medium |
| Data migration — one brand's catalogue, customers, order history into the combined instance + URL/SEO migration |
Biggest unknown — needs data volumes & catalogue overlap |
Low |
| Multi-website build & environment config — websites/stores/store-views, domains, Fastly, cloud sizing |
Both already Adobe Commerce Cloud |
High |
| Regression QA, UAT, cutover rehearsals + cutover |
Full-platform regression across both brands |
Medium |
Phase 2 — Shared basket (within territory, on the consolidated instance)
| Workstream | Evidence base | Confidence |
| Topology decision implementation & customer/session model |
Same-Website-separate-Stores vs separate Websites |
Medium |
| Cross-brand basket & checkout UX (Hyvä/Magewire) |
Single Hyvä Checkout stack post-consolidation |
Medium |
| Mixed-fulfilment checkout — fresh date-based + flat-rate + subscription items in one basket |
The audit's Very High item — multi-shipment consignment UX |
Low |
| Promotions, gift cards & loyalty across brands |
Givex/Adyen gift cards (D), SARP/Club (B) coexistence rules |
Medium |
| Per-brand order attribution & reporting on shared baskets |
Legal entities stay separate; mapping logic |
Medium |
| E2E QA across brand permutations |
Basket permutation matrix |
Medium |
5Reading the routes side by side
| Route 1 — shared stock on each store | Route 2 — basket transfer | Route 3 — consolidate (P1+P2) |
| Delivers the actual ask (one basket) | Partially — cross-brand items in one checkout, curated range only | No — the basket travels, but checkout stays per brand | Yes |
| Ongoing overhead added | Stock-sync operation to run & monitor | Minimal | Reduced — one platform, not two |
| Throwaway on later consolidation | Sync & order-routing plumbing | Transfer plumbing only | None |
| Timing constraint | None | None | Phase 1 ↔ March '27 renewal |
Routes 1 and 2 are not mutually exclusive — the shared workstreams
(navigation, merchandising, analytics, optional sign-on) are built once, so the two can ship separately or together
as the interim play while Route 3 Phase 1 is planned. Neither delivers a true single basket across the brands;
Route 3 remains the only route that does. The strategic comparison to make is "interim cross-brand experience
now (Routes 1/2) + Route 3 phased".