A metà 2026, il composable commerce ha superato il picco della curva d'attesa. Negli ultimi 3 anni abbiamo migrato oltre 40 brand enterprise da Shopify Liquid a headless, da piattaforme monolitiche a architetture MACH. I risultati sono bipolari: in alcuni progetti il TTI è sceso da 6 secondi a 1,2 secondi; in altri, il costo di integrazione ha superato il budget del 230%. Ora che Shopify Hydrogen 2.5, l'API di Composable Commerce di commercetools v3 e BigCommerce Catalyst hanno raggiunto la maturità, la scelta dell'architettura e delle aspettative numeriche dipende dai vostri scenari di produzione. In questo articolo confrontiamo tre piattaforme headless principali secondo la disciplina dell'ingegneria: tempo di setup, costi runtime, carico di integrazione e impatto sulla trasformazione.
Che Cosa È MACH e Che Cosa Significa in Produzione
L'architettura MACH (Microservizi, API-first, Cloud-native, Headless) è stata commercializzata nel 2020 con la promessa "niente vendor lock-in, sei libero". La realtà 2026 è: la libertà esiste, ma il prezzo della libertà è l'ingegneria d'integrazione. In una piattaforma monolitica (Shopify Plus, WooCommerce), pagamento, inventario, checkout convergono in un'API unica. Con MACH li separate in servizi distinti: carrello di commercetools, pagamento Stripe, ricerca Algolia, CMS Contentful. Ogni servizio è best-of-breed — ma siete voi a scrivere il codice di connessione.
In uno scenario di produzione emergono 3 fattori critici di costo:
- Overhead di integrazione: Ogni microservizio ha autenticazione diversa, limiti di rate differenti, gestione errori propria. Un progetto mediano che utilizza 6 microservizi richiede 2.400 linee di codice di integrazione (dato interno Roibase 2025).
- Cascata di latenza runtime: Se inviate 4 request sequenziali a API diverse (es: prodotto → pricing → inventario → disponibilità), il tempo di risposta totale raggiunge 1.200ms. Se ottimizzate i request paralleli scende a 320ms — ma dovrete implementare una strategia di caching al margine della rete.
- Complessità DevOps: In una piattaforma monolitica il deployment è un bottone. Con MACH, frontend, BFF (Backend for Frontend) e 6 microservizi hanno pipeline di deploy separati. Se la maturità CI/CD è bassa, un progetto di 3 mesi diventa 8.
Tenendo conto di questi 3 fattori, confrontiamo Shopify Hydrogen, BigCommerce Catalyst e commercetools.
Shopify Hydrogen: Ponte tra il Composable Gestito e la Semplicità
Shopify Hydrogen 2.5 (rilascio Q1 2026) non è pienamente MACH — potremmo chiamarlo composable ibrido. Il backend di Shopify rimane monolitico (carrello, checkout, pagamento rimangono in Shopify Admin), mentre il frontend è headless nel framework Remix. Questo approccio ibrido offre vantaggi in produzione:
Tempo di setup: Media 6 settimane (design + sviluppo + staging). L'Admin API di Shopify è già stabile, l'autenticazione OAuth è risolvibile in 2 ore. In Hydrogen la funzione createStorefrontClient() si connette all'API Storefront, le mutazioni del carrello sono built-in. Esempio di codice:
// app/routes/products.$handle.tsx
import { useLoaderData } from '@remix-run/react';
import { json, type LoaderFunctionArgs } from '@shopify/remix-oxygen';
export async function loader({ params, context }: LoaderFunctionArgs) {
const { storefront } = context;
const { product } = await storefront.query(PRODUCT_QUERY, {
variables: { handle: params.handle }
});
return json({ product });
}
Questo codice gira nella CDN edge di Shopify (Oxygen). Il tempo di risposta mediano è 180ms (dato Shopify Partner 2026).
Costo runtime: Licenza Shopify Plus $2.000/mese (commissione transazione 0,15%), hosting Hydrogen su Oxygen incluso. Senza microservizi aggiuntivi il costo totale è $2.200/mese. Su un sito con 100K sessioni/mese, i Core Web Vitals risultano: LCP 1,2s, TBT 85ms (se Skeleton UI di Hydrogen e Suspense boundary sono ottimizzati).
Trade-off: Non potete staccare il checkout da Shopify. Se avete bisogno di un checkout completamente personalizzato (ad es: flusso di approvazione ordini B2B multi-step) Hydrogen è limitato. Ma l'80% degli scenari e-commerce non soffre di questo vincolo — il tasso di conversione del checkout di Shopify è mediano 68% (dato Shopify 2025), e un checkout personalizzato supera questo valore solo con A/B test aggressivi.
Nella implementazione di Headless Commerce consigliamo solitamente Hydrogen nella fascia 3-5M TL di GMV annuale: ottenete la velocità del frontend headless appoggiandovi sulla stabilità del backend di Shopify.
commercetools: Piena Libertà MACH, Carico Totale di Integrazione
commercetools nel 2026 è il riferimento "true composable". Tutto è API: carrello, prodotto, pricing, cliente, ordine. Collegate il frontend con Next.js, Nuxt, SvelteKit; integrate il checkout con Adyen, Stripe, Klarna; integrate la ricerca con Algolia, Coveo, Elasticsearch. Questa libertà è il sogno dell'ingegnere — ma può essere l'incubo del CFO.
Tempo di setup: Media 16 settimane (con feature set minimo). Perché così lungo? Perché ogni integrazione è codice custom:
- Autenticazione: Il flusso OAuth 2.0 client credentials di commercetools — per ogni microservizio servono logiche di token management separate (expires_in 172800s, refresh logic a carico vostro).
- Sincronizzazione carrello: Lo stato del carrello risiede in session storage, Redis o direttamente nell'API di commercetools? Questa decisione cambia l'architettura. Se lo mantenete in Redis, ogni request deve validare l'inventario dall'API (rischio di race condition).
- Orchestrazione checkout: Quando l'ordine è confermato, sequenzialmente: creare ordine in commercetools → addebitare su payment provider → pusciare a ERP → notificare via email. Se uno step fallisce, la logica di rollback è a carico vostro.
Esempio di codice di integrazione (route API Next.js per aggiornare il carrello):
// pages/api/cart/add.ts
import { createApiClient } from '@commercetools/sdk-client-v2';
import { createAuthMiddlewareForClientCredentialsFlow } from '@commercetools/sdk-middleware-auth';
export default async function handler(req, res) {
const client = createApiClient({
middlewares: [
createAuthMiddlewareForClientCredentialsFlow({
host: 'https://auth.europe-west1.gcp.commercetools.com',
projectKey: process.env.CTP_PROJECT_KEY,
credentials: {
clientId: process.env.CTP_CLIENT_ID,
clientSecret: process.env.CTP_CLIENT_SECRET
}
})
]
});
const { productId, quantity } = req.body;
const cartResponse = await client.carts().withId({ ID: req.cookies.cartId }).post({
body: {
version: req.cookies.cartVersion,
actions: [{ action: 'addLineItem', productId, quantity }]
}
}).execute();
res.status(200).json(cartResponse.body);
}
Questo codice aggiunge un prodotto al carrello — il motore di pricing è separato (API Pricing di commercetools), il controllo inventario è separato (API Inventory), il calcolo della spedizione è separato (extension personalizzato o servizio terzo). Ognuno ha latenza propria.
Costo runtime: Licenza commercetools $50K-$200K/anno (in base al volume di request). Algolia $800/mese, Contentful $600/mese, hosting Vercel $1.200/mese, monitoring Sentry $200/mese. Totale $5K-$7K/mese (+ costo iniziale di sviluppo $150K-$250K). Ma i numeri risultanti: TBT 110ms, LCP 1,1s sono possibili (con edge caching + ISR ottimizzati).
Trade-off: Libertà + costo. Se il vostro scenario include pricing multi-region (es: prezzi diversi lira turca, euro, dollaro con margini differenti), flussi di approvazione B2B complessi, pricing dinamico con bundle, commercetools è la scelta giusta. Ma se lo scenario e-commerce è standard (B2C, valuta unica, checkout semplice), l'overhead di integrazione riduce il ROI.
BigCommerce Catalyst: Il Nuovo Attore, la Questione della Maturità
BigCommerce Catalyst è uscito dalla beta a fine 2024, in GA dal primo 2026. Il concetto: React Server Components (RSC) + Next.js App Router + BigCommerce Storefront API. Modello ibrido simile a Hydrogen — backend BigCommerce, frontend RSC.
Tempo di setup: Media 8 settimane. La documentazione dell'API di BigCommerce non è ancora matura come quella di Shopify (al 2026), ma con la CLI di Catalyst il progetto è pronto in 15 minuti. Esempio di componente RSC:
// app/product/[slug]/page.tsx
import { getProduct } from '@/lib/bigcommerce';
export default async function ProductPage({ params }) {
const product = await getProduct(params.slug); // Server Component — API diretto
return (
<div>
<h1>{product.name}</h1>
<p>{product.price.value} {product.price.currencyCode}</p>
<AddToCartButton productId={product.id} /> {/* Client Component */}
</div>
);
}
Grazie a RSC il data fetch è server-side, l'HTML viene inviato come stream al browser. TBT basso (mediano 95ms), LCP 1,3s.
Costo runtime: BigCommerce Plus $299/mese (nessuna commissione transazione), hosting Vercel $500/mese (piano Pro). Totale $800/mese. Più economico di Hydrogen, molto meno costoso di commercetools. Ma attenzione: Catalyst ha soltanto 18 mesi. In produzione, edge case (es: carrello multi-valuta, applicazione gift card) non sono fluidi come in Shopify.
Trade-off: Vantaggio di costo + rischio di maturità. Per progetti di medie dimensioni (2-10M TL GMV) è ragionevole. Ma in ambienti enterprise critici (es: 50K utenti concorrenti il Black Friday) il limite di rate dell'API di BigCommerce (450 req/s default) può diventare collo di bottiglia — in Shopify è 1000 req/s.
Matrice di Scelta: Piattaforme per Scenari di Produzione
La piattaforma che sceglierete dipende da 3 variabili: GMV/traffico, complessità logic custom, maturità engineering.
| Scenario | Piattaforma | Motivazione |
|---|---|---|
| B2C, 1-5M TL GMV, checkout standard | Shopify Hydrogen | Equilibrio stabilità gestita + velocità |
| B2C, 5-20M TL GMV, catalogo molto categorizzato | BigCommerce Catalyst | Vantaggio costo, feature sufficienti |
| B2B, 10M+ TL GMV, pricing complesso | commercetools | Libertà necessaria, budget disponibile |
| Multi-brand, multi-region, 50M+ GMV | commercetools o Shopify Plus (multi-store) | Scala + requisiti compliance |
Esiste anche un'opzione "ibrida": backend Shopify Plus + frontend headless custom (senza Hydrogen). Vi collegatevi tramite Storefront API ma ospitate il frontend su vostro edge (Cloudflare Workers, Vercel Edge). Potete abbassare LCP a 1,0s, ma perdete le ottimizzazioni built-in di Hydrogen (logica prefetch, Suspense boundary).
Capacità del Team e Sostenibilità
L'architettura MACH non è solo setup, ma anche manutenzione costosa. In un progetto commercetools servono in media 2 backend dev + 1 frontend dev + 0,5 DevOps full-time (post-launch). Con Shopify Hydrogen 1 frontend dev + 0,2 DevOps sono sufficienti (il backend di Shopify è self-managed).
Profilo del team:
- Shopify Hydrogen: Conoscenza Remix + esperienza API Shopify. Anche developer junior-mid passano in produzione (documentazione matura).
- BigCommerce Catalyst: Conoscenza React Server Components obbligatoria. RSC è ancora nicchia — serve un React dev senior.
- commercetools: Esperienza microservizi, comprensione OAuth flow, maturità error handling. Serve mid-senior.
Se il team è 2-3 persone, full-stack non dedicato, Hydrogen è il più sicuro. Se avete 5+ persone e backend dedicato, la transizione a commercetools è logica.
Benchmark di Prestazione: Numeri Reali
Da 12 progetti migrati tra 2025 e 2026, valori mediani (Lighthouse lab data):
| Metrica | Shopify Liquid (baseline) | Hydrogen | Catalyst | commercetools |
|---|---|---|---|---|
| LCP | 4,2s | 1,2s | 1,3s | 1,1s |
| TBT | 680ms | 85ms | 95ms | 110ms |
| CLS | 0,18 | 0,02 | 0,03 | 0,01 |
| TTI | 6,1s | 2,4s | 2,6s | 2,2s |
| Build time (CI) | N/A | 3,2 min | 4,1 min | 5,8 min |
commercetools ha LCP più basso —