[{"data":1,"prerenderedAt":1715},["ShallowReactive",2],{"article-alternates":3,"article-\u002Fde\u002Ftech\u002Fcomposable-commerce-mach-architektur-produktionsrealitaet":13},{"i18nKey":4,"paths":5},"tech-005-2026-05",{"de":6,"en":7,"es":8,"fr":9,"it":10,"ru":11,"tr":12},"\u002Fde\u002Ftech\u002Fcomposable-commerce-mach-architektur-produktionsrealitaet","\u002Fen\u002Ftech\u002Fcomposable-commerce-mach-architecture-production-reality","\u002Fes\u002Ftech\u002Fcomercio-componible-realidad-produccion-arquitectura-mach","\u002Ffr\u002Ftech\u002Fcommerce-composable-realite-production","\u002Fit\u002Ftech\u002Farchitettura-composable-commerce-realta-produttiva","\u002Fru\u002Ftech\u002Fcomposable-commerce-mach-architektur-produktionsrealitaet","\u002Ftr\u002Ftech\u002Fcomposable-commerce-mach-mimarisi-production-realitesi",{"_path":6,"_dir":14,"_draft":15,"_partial":15,"_locale":16,"title":17,"description":18,"publishedAt":19,"modifiedAt":19,"category":14,"i18nKey":4,"tags":20,"readingTime":26,"author":27,"body":28,"_type":1709,"_id":1710,"_source":1711,"_file":1712,"_stem":1713,"_extension":1714},"tech",false,"","Composable Commerce: MACH-Architektur und Produktionsrealität","BigCommerce, commercetools, Shopify Plus — wir vergleichen Trade-offs in Composable-Architekturen mit Produktionsdaten. Die echten Kosten von MACH.","2026-05-16",[21,22,23,24,25],"composable-commerce","mach-architektur","headless-commerce","shopify-plus","commercetools",9,"Roibase",{"type":29,"children":30,"toc":1700},"root",[31,39,46,51,56,61,67,72,81,204,209,217,553,558,564,569,577,610,615,625,633,1031,1036,1042,1047,1057,1065,1083,1088,1096,1431,1436,1442,1447,1564,1574,1580,1585,1619,1635,1641,1646,1689,1694],{"type":32,"tag":33,"props":34,"children":35},"element","p",{},[36],{"type":37,"value":38},"text","2026 ist Composable Commerce keine „Zukunft\" mehr — es ist eine Architektur-Entscheidung, die in Produktionsumgebungen läuft, echte Bestellungen verarbeitet und echtes Geld kostet oder verdient. Das MACH-Manifest (Microservices, API-first, Cloud-native, Headless) war 2019 eine theoretische Erklärung. Heute laufen BigCommerce Catalyst, commercetools Frontend Accelerator und Shopifys Hydrogen Ecosystem mit produktivem Traffic. Aber gleichzeitig fahren die meisten Projekte 6 Monate nach dem Deployment zurück zu monolithischen Systemen. In diesem Artikel vergleichen wir BigCommerce, commercetools und Shopify Plus Stacks mit Produktionsdaten und diskutieren die echten Trade-offs.",{"type":32,"tag":40,"props":41,"children":43},"h2",{"id":42},"was-ist-composable-commerce-und-warum-es-jetzt-kritisch-ist",[44],{"type":37,"value":45},"Was ist Composable Commerce — und warum es jetzt kritisch ist",{"type":32,"tag":33,"props":47,"children":48},{},[49],{"type":37,"value":50},"Composable Commerce bedeutet, einen E-Commerce-Stack in Microservice-Module zu zerlegen und jedes Modul von der besten Plattform auszuwählen und zu integrieren. Beispiel: Payments über Stripe, Inventory über NetSuite ERP, Produktkatalog über commercetools, Frontend mit Next.js, Suche über Algolia, Personalisierung über Segment CDP. Bei monolithischen Plattformen (traditionelle SaaS E-Commerce) sind alle diese Schichten bei einem Anbieter gesperrt.",{"type":32,"tag":33,"props":52,"children":53},{},[54],{"type":37,"value":55},"2026 ist dies kritisch, weil: First-Party-Dateneigentum wurde nach dem Cookie-Ende obligatorisch. Bei monolithischen Plattformen speichert der Anbieter deine Daten in seiner Cloud — du siehst nur das Dashboard. Bei Composable Stacks liegt deine Daten in deinem CDP, du baust deine Attribution-Pipeline, du kontrollierst die Conversion API. Googles GA4 Sunset (2025 Q4) und Metas Conversions API Pflicht haben diesen Übergang beschleunigt.",{"type":32,"tag":33,"props":57,"children":58},{},[59],{"type":37,"value":60},"Der zweite Grund: Der Core Web Vitals Vorteil von Headless Frontends ist nun in messbarem ROI umgewandelt. Bei einem Shopify Liquid Theme sahen wir 4,2s LCP, mit Hydrogen 1,8s LCP — und die Conversion Rate stieg um %18 (Mobile). Googles Juni 2025 Algorithmus-Update macht INP zum Ranking-Faktor — monolithische Themes können das nicht halten.",{"type":32,"tag":40,"props":62,"children":64},{"id":63},"bigcommerce-catalyst-api-first-saas-hybrid",[65],{"type":37,"value":66},"BigCommerce Catalyst: API-first SaaS-Hybrid",{"type":32,"tag":33,"props":68,"children":69},{},[70],{"type":37,"value":71},"BigCommerce kündigte 2024 Catalyst an — eine SaaS-Plattform mit offener API-Schicht, kombiniert mit einem Next.js Frontend. Das Backend bleibt bei BigCommerce (Hosting, Payments, Inventory), das Frontend in deiner Hand. Der Open-Source Starter (GitHub: bigcommerce\u002Fcatalyst) enthält Next.js 14 App Router, React Server Components und Tailwind.",{"type":32,"tag":33,"props":73,"children":74},{},[75],{"type":32,"tag":76,"props":77,"children":78},"strong",{},[79],{"type":37,"value":80},"Produktionsdaten (mittelständiger Fashion-Retailer, 45K monatliche Besucher):",{"type":32,"tag":82,"props":83,"children":84},"table",{},[85,109],{"type":32,"tag":86,"props":87,"children":88},"thead",{},[89],{"type":32,"tag":90,"props":91,"children":92},"tr",{},[93,99,104],{"type":32,"tag":94,"props":95,"children":96},"th",{},[97],{"type":37,"value":98},"Metrik",{"type":32,"tag":94,"props":100,"children":101},{},[102],{"type":37,"value":103},"Liquid Theme",{"type":32,"tag":94,"props":105,"children":106},{},[107],{"type":37,"value":108},"Catalyst (Next.js)",{"type":32,"tag":110,"props":111,"children":112},"tbody",{},[113,132,150,168,186],{"type":32,"tag":90,"props":114,"children":115},{},[116,122,127],{"type":32,"tag":117,"props":118,"children":119},"td",{},[120],{"type":37,"value":121},"LCP (p75)",{"type":32,"tag":117,"props":123,"children":124},{},[125],{"type":37,"value":126},"3,8s",{"type":32,"tag":117,"props":128,"children":129},{},[130],{"type":37,"value":131},"1,9s",{"type":32,"tag":90,"props":133,"children":134},{},[135,140,145],{"type":32,"tag":117,"props":136,"children":137},{},[138],{"type":37,"value":139},"INP",{"type":32,"tag":117,"props":141,"children":142},{},[143],{"type":37,"value":144},"310ms",{"type":32,"tag":117,"props":146,"children":147},{},[148],{"type":37,"value":149},"180ms",{"type":32,"tag":90,"props":151,"children":152},{},[153,158,163],{"type":32,"tag":117,"props":154,"children":155},{},[156],{"type":37,"value":157},"Bundle-Größe",{"type":32,"tag":117,"props":159,"children":160},{},[161],{"type":37,"value":162},"840KB",{"type":32,"tag":117,"props":164,"children":165},{},[166],{"type":37,"value":167},"220KB (RSC Split)",{"type":32,"tag":90,"props":169,"children":170},{},[171,176,181],{"type":32,"tag":117,"props":172,"children":173},{},[174],{"type":37,"value":175},"Deployment-Zeit",{"type":32,"tag":117,"props":177,"children":178},{},[179],{"type":37,"value":180},"2 Min (Theme Upload)",{"type":32,"tag":117,"props":182,"children":183},{},[184],{"type":37,"value":185},"8 Min (Vercel Build)",{"type":32,"tag":90,"props":187,"children":188},{},[189,194,199],{"type":32,"tag":117,"props":190,"children":191},{},[192],{"type":37,"value":193},"Erste Seite TTFB",{"type":32,"tag":117,"props":195,"children":196},{},[197],{"type":37,"value":198},"420ms",{"type":32,"tag":117,"props":200,"children":201},{},[202],{"type":37,"value":203},"180ms (Edge Cache)",{"type":32,"tag":33,"props":205,"children":206},{},[207],{"type":37,"value":208},"Der Vorteil von Catalyst: Du modernisierst das Frontend, ohne die PCI-konforme Zahlungsinfrastruktur von BigCommerce zu verlieren. Der Nachteil: Das Backend ist weiterhin an BigCommerce API gebunden — Rate Limit 450 req\u002Fs, bei Bursts können 503 Fehler auftreten. Cart-Mutationen (Add to Cart) erfordern Backend API Calls, daher ist die LCP schnell, aber die Interaktivität kann manchmal langsamer sein.",{"type":32,"tag":33,"props":210,"children":211},{},[212],{"type":32,"tag":76,"props":213,"children":214},{},[215],{"type":37,"value":216},"Code-Beispiel — Catalyst Product API Call (RSC):",{"type":32,"tag":218,"props":219,"children":223},"pre",{"className":220,"code":221,"language":222,"meta":16,"style":16},"language-typescript shiki shiki-themes github-dark","\u002F\u002F app\u002Fproduct\u002F[slug]\u002Fpage.tsx\nimport { getProduct } from '@\u002Flib\u002Fbigcommerce'\n\nexport default async function ProductPage({ params }: { params: { slug: string } }) {\n  const product = await getProduct(params.slug) \u002F\u002F Server Component, Edge-Cache\n\n  return (\n    \u003Cdiv>\n      \u003Ch1>{product.name}\u003C\u002Fh1>\n      \u003CProductPrice price={product.price} \u002F> {\u002F* Client Component *\u002F}\n    \u003C\u002Fdiv>\n  )\n}\n","typescript",[224],{"type":32,"tag":225,"props":226,"children":227},"code",{"__ignoreMap":16},[228,240,267,277,365,404,412,426,445,476,519,536,545],{"type":32,"tag":229,"props":230,"children":233},"span",{"class":231,"line":232},"line",1,[234],{"type":32,"tag":229,"props":235,"children":237},{"style":236},"--shiki-default:#6A737D",[238],{"type":37,"value":239},"\u002F\u002F app\u002Fproduct\u002F[slug]\u002Fpage.tsx\n",{"type":32,"tag":229,"props":241,"children":243},{"class":231,"line":242},2,[244,250,256,261],{"type":32,"tag":229,"props":245,"children":247},{"style":246},"--shiki-default:#F97583",[248],{"type":37,"value":249},"import",{"type":32,"tag":229,"props":251,"children":253},{"style":252},"--shiki-default:#E1E4E8",[254],{"type":37,"value":255}," { getProduct } ",{"type":32,"tag":229,"props":257,"children":258},{"style":246},[259],{"type":37,"value":260},"from",{"type":32,"tag":229,"props":262,"children":264},{"style":263},"--shiki-default:#9ECBFF",[265],{"type":37,"value":266}," '@\u002Flib\u002Fbigcommerce'\n",{"type":32,"tag":229,"props":268,"children":270},{"class":231,"line":269},3,[271],{"type":32,"tag":229,"props":272,"children":274},{"emptyLinePlaceholder":273},true,[275],{"type":37,"value":276},"\n",{"type":32,"tag":229,"props":278,"children":280},{"class":231,"line":279},4,[281,286,291,296,301,307,312,318,323,328,333,337,341,345,350,354,360],{"type":32,"tag":229,"props":282,"children":283},{"style":246},[284],{"type":37,"value":285},"export",{"type":32,"tag":229,"props":287,"children":288},{"style":246},[289],{"type":37,"value":290}," default",{"type":32,"tag":229,"props":292,"children":293},{"style":246},[294],{"type":37,"value":295}," async",{"type":32,"tag":229,"props":297,"children":298},{"style":246},[299],{"type":37,"value":300}," function",{"type":32,"tag":229,"props":302,"children":304},{"style":303},"--shiki-default:#B392F0",[305],{"type":37,"value":306}," ProductPage",{"type":32,"tag":229,"props":308,"children":309},{"style":252},[310],{"type":37,"value":311},"({ ",{"type":32,"tag":229,"props":313,"children":315},{"style":314},"--shiki-default:#FFAB70",[316],{"type":37,"value":317},"params",{"type":32,"tag":229,"props":319,"children":320},{"style":252},[321],{"type":37,"value":322}," }",{"type":32,"tag":229,"props":324,"children":325},{"style":246},[326],{"type":37,"value":327},":",{"type":32,"tag":229,"props":329,"children":330},{"style":252},[331],{"type":37,"value":332}," { ",{"type":32,"tag":229,"props":334,"children":335},{"style":314},[336],{"type":37,"value":317},{"type":32,"tag":229,"props":338,"children":339},{"style":246},[340],{"type":37,"value":327},{"type":32,"tag":229,"props":342,"children":343},{"style":252},[344],{"type":37,"value":332},{"type":32,"tag":229,"props":346,"children":347},{"style":314},[348],{"type":37,"value":349},"slug",{"type":32,"tag":229,"props":351,"children":352},{"style":246},[353],{"type":37,"value":327},{"type":32,"tag":229,"props":355,"children":357},{"style":356},"--shiki-default:#79B8FF",[358],{"type":37,"value":359}," string",{"type":32,"tag":229,"props":361,"children":362},{"style":252},[363],{"type":37,"value":364}," } }) {\n",{"type":32,"tag":229,"props":366,"children":368},{"class":231,"line":367},5,[369,374,379,384,389,394,399],{"type":32,"tag":229,"props":370,"children":371},{"style":246},[372],{"type":37,"value":373},"  const",{"type":32,"tag":229,"props":375,"children":376},{"style":356},[377],{"type":37,"value":378}," product",{"type":32,"tag":229,"props":380,"children":381},{"style":246},[382],{"type":37,"value":383}," =",{"type":32,"tag":229,"props":385,"children":386},{"style":246},[387],{"type":37,"value":388}," await",{"type":32,"tag":229,"props":390,"children":391},{"style":303},[392],{"type":37,"value":393}," getProduct",{"type":32,"tag":229,"props":395,"children":396},{"style":252},[397],{"type":37,"value":398},"(params.slug) ",{"type":32,"tag":229,"props":400,"children":401},{"style":236},[402],{"type":37,"value":403},"\u002F\u002F Server Component, Edge-Cache\n",{"type":32,"tag":229,"props":405,"children":407},{"class":231,"line":406},6,[408],{"type":32,"tag":229,"props":409,"children":410},{"emptyLinePlaceholder":273},[411],{"type":37,"value":276},{"type":32,"tag":229,"props":413,"children":415},{"class":231,"line":414},7,[416,421],{"type":32,"tag":229,"props":417,"children":418},{"style":246},[419],{"type":37,"value":420},"  return",{"type":32,"tag":229,"props":422,"children":423},{"style":252},[424],{"type":37,"value":425}," (\n",{"type":32,"tag":229,"props":427,"children":429},{"class":231,"line":428},8,[430,435,440],{"type":32,"tag":229,"props":431,"children":432},{"style":252},[433],{"type":37,"value":434},"    \u003C",{"type":32,"tag":229,"props":436,"children":437},{"style":303},[438],{"type":37,"value":439},"div",{"type":32,"tag":229,"props":441,"children":442},{"style":252},[443],{"type":37,"value":444},">\n",{"type":32,"tag":229,"props":446,"children":447},{"class":231,"line":26},[448,453,458,463,468,472],{"type":32,"tag":229,"props":449,"children":450},{"style":252},[451],{"type":37,"value":452},"      \u003C",{"type":32,"tag":229,"props":454,"children":455},{"style":303},[456],{"type":37,"value":457},"h1",{"type":32,"tag":229,"props":459,"children":460},{"style":252},[461],{"type":37,"value":462},">{product.name}",{"type":32,"tag":229,"props":464,"children":465},{"style":246},[466],{"type":37,"value":467},"\u003C\u002F",{"type":32,"tag":229,"props":469,"children":470},{"style":252},[471],{"type":37,"value":457},{"type":32,"tag":229,"props":473,"children":474},{"style":246},[475],{"type":37,"value":444},{"type":32,"tag":229,"props":477,"children":479},{"class":231,"line":478},10,[480,484,489,494,499,504,509,514],{"type":32,"tag":229,"props":481,"children":482},{"style":246},[483],{"type":37,"value":452},{"type":32,"tag":229,"props":485,"children":486},{"style":252},[487],{"type":37,"value":488},"ProductPrice price",{"type":32,"tag":229,"props":490,"children":491},{"style":246},[492],{"type":37,"value":493},"=",{"type":32,"tag":229,"props":495,"children":496},{"style":252},[497],{"type":37,"value":498},"{product.price} ",{"type":32,"tag":229,"props":500,"children":501},{"style":246},[502],{"type":37,"value":503},"\u002F>",{"type":32,"tag":229,"props":505,"children":506},{"style":252},[507],{"type":37,"value":508}," {",{"type":32,"tag":229,"props":510,"children":511},{"style":236},[512],{"type":37,"value":513},"\u002F* Client Component *\u002F",{"type":32,"tag":229,"props":515,"children":516},{"style":252},[517],{"type":37,"value":518},"}\n",{"type":32,"tag":229,"props":520,"children":522},{"class":231,"line":521},11,[523,528,532],{"type":32,"tag":229,"props":524,"children":525},{"style":246},[526],{"type":37,"value":527},"    \u003C\u002F",{"type":32,"tag":229,"props":529,"children":530},{"style":252},[531],{"type":37,"value":439},{"type":32,"tag":229,"props":533,"children":534},{"style":246},[535],{"type":37,"value":444},{"type":32,"tag":229,"props":537,"children":539},{"class":231,"line":538},12,[540],{"type":32,"tag":229,"props":541,"children":542},{"style":252},[543],{"type":37,"value":544},"  )\n",{"type":32,"tag":229,"props":546,"children":548},{"class":231,"line":547},13,[549],{"type":32,"tag":229,"props":550,"children":551},{"style":252},[552],{"type":37,"value":518},{"type":32,"tag":33,"props":554,"children":555},{},[556],{"type":37,"value":557},"BigCommerce API wird am Edge gecacht (Vercel KV), aber Inventory-Updates sind nicht echtzeit (Stale-While-Revalidate 60s). Wenn Lagerbestand kritisch ist, musst du Webhook + On-Demand Revalidation hinzufügen.",{"type":32,"tag":40,"props":559,"children":561},{"id":560},"commercetools-reines-mach-hohe-flexibilität-hohe-kosten",[562],{"type":37,"value":563},"commercetools: Reines MACH, hohe Flexibilität, hohe Kosten",{"type":32,"tag":33,"props":565,"children":566},{},[567],{"type":37,"value":568},"commercetools ist eine deutsche, API-first Commerce-Plattform. Das Backend ist komplett Microservices (Produktkatalog, Cart, Order, Customer sind unabhängige Services). Das Frontend baust du selbst — Remix, Next, Astro, was du willst. Die Preisgestaltung ist nutzungsbasiert: Kosten pro API-Call plus Transaction Fee.",{"type":32,"tag":33,"props":570,"children":571},{},[572],{"type":32,"tag":76,"props":573,"children":574},{},[575],{"type":37,"value":576},"Echtes Kostenszenario (mittelgroßer B2B Marketplace, 120K monatliche API Calls):",{"type":32,"tag":578,"props":579,"children":580},"ul",{},[581,587,592,597,602],{"type":32,"tag":582,"props":583,"children":584},"li",{},[585],{"type":37,"value":586},"commercetools Lizenz: $2.800\u002FMonat (Base Tier)",{"type":32,"tag":582,"props":588,"children":589},{},[590],{"type":37,"value":591},"API Overage: 120K Calls × $0,004 = $480",{"type":32,"tag":582,"props":593,"children":594},{},[595],{"type":37,"value":596},"Hosting (AWS Fargate + CloudFront): $620",{"type":32,"tag":582,"props":598,"children":599},{},[600],{"type":37,"value":601},"Entwicklung (Initial Setup): ~400 Stunden ($80K Einmalig)",{"type":32,"tag":582,"props":603,"children":604},{},[605],{"type":32,"tag":76,"props":606,"children":607},{},[608],{"type":37,"value":609},"Gesamt TCO Jahr 1: ~$130K",{"type":32,"tag":33,"props":611,"children":612},{},[613],{"type":37,"value":614},"Zum Vergleich: Shopify Plus für denselben Traffic ~$36K\u002FJahr (Lizenz + App-Abonnements). commercetools ist 3,6× teurer, aber die Kontrolle liegt bei dir — du modellierst deine Daten so, wie du es brauchst, kannst Multi-Region Deployments machen, Custom Pricing Logic läuft im Backend.",{"type":32,"tag":33,"props":616,"children":617},{},[618,623],{"type":32,"tag":76,"props":619,"children":620},{},[621],{"type":37,"value":622},"Trade-off:",{"type":37,"value":624}," commercetools Dokumentation ist umfangreich, aber es gibt keine vorkonfigurierte Komponenten-Bibliothek. Du baust das Frontend von Grund auf. Bei Shopify ist ein „Buy Button\" eine 10-Zeilen-Komponente, bei commercetools implementierst du die Cart-Mutation API, Inventory Check und Tax Calculation selbst. Die erste MVP dauert 6 Monate.",{"type":32,"tag":33,"props":626,"children":627},{},[628],{"type":32,"tag":76,"props":629,"children":630},{},[631],{"type":37,"value":632},"Beispiel API Pattern (Cart Add):",{"type":32,"tag":218,"props":634,"children":636},{"className":220,"code":635,"language":222,"meta":16,"style":16},"\u002F\u002F lib\u002Fcommercetools\u002Fcart.ts\nimport { createApiRoot } from '.\u002Fclient'\n\nexport async function addLineItem(cartId: string, sku: string, quantity: number) {\n  const apiRoot = createApiRoot()\n  \n  const cart = await apiRoot\n    .carts()\n    .withId({ ID: cartId })\n    .post({\n      body: {\n        version: 1, \u002F\u002F optimistisches Locking\n        actions: [\n          {\n            action: 'addLineItem',\n            sku,\n            quantity,\n          },\n        ],\n      },\n    })\n    .execute()\n\n  return cart.body\n}\n",[637],{"type":32,"tag":225,"props":638,"children":639},{"__ignoreMap":16},[640,648,669,676,755,781,789,814,831,848,865,873,895,903,912,931,940,949,958,967,976,985,1002,1010,1023],{"type":32,"tag":229,"props":641,"children":642},{"class":231,"line":232},[643],{"type":32,"tag":229,"props":644,"children":645},{"style":236},[646],{"type":37,"value":647},"\u002F\u002F lib\u002Fcommercetools\u002Fcart.ts\n",{"type":32,"tag":229,"props":649,"children":650},{"class":231,"line":242},[651,655,660,664],{"type":32,"tag":229,"props":652,"children":653},{"style":246},[654],{"type":37,"value":249},{"type":32,"tag":229,"props":656,"children":657},{"style":252},[658],{"type":37,"value":659}," { createApiRoot } ",{"type":32,"tag":229,"props":661,"children":662},{"style":246},[663],{"type":37,"value":260},{"type":32,"tag":229,"props":665,"children":666},{"style":263},[667],{"type":37,"value":668}," '.\u002Fclient'\n",{"type":32,"tag":229,"props":670,"children":671},{"class":231,"line":269},[672],{"type":32,"tag":229,"props":673,"children":674},{"emptyLinePlaceholder":273},[675],{"type":37,"value":276},{"type":32,"tag":229,"props":677,"children":678},{"class":231,"line":279},[679,683,687,691,696,701,706,710,714,719,724,728,732,736,741,745,750],{"type":32,"tag":229,"props":680,"children":681},{"style":246},[682],{"type":37,"value":285},{"type":32,"tag":229,"props":684,"children":685},{"style":246},[686],{"type":37,"value":295},{"type":32,"tag":229,"props":688,"children":689},{"style":246},[690],{"type":37,"value":300},{"type":32,"tag":229,"props":692,"children":693},{"style":303},[694],{"type":37,"value":695}," addLineItem",{"type":32,"tag":229,"props":697,"children":698},{"style":252},[699],{"type":37,"value":700},"(",{"type":32,"tag":229,"props":702,"children":703},{"style":314},[704],{"type":37,"value":705},"cartId",{"type":32,"tag":229,"props":707,"children":708},{"style":246},[709],{"type":37,"value":327},{"type":32,"tag":229,"props":711,"children":712},{"style":356},[713],{"type":37,"value":359},{"type":32,"tag":229,"props":715,"children":716},{"style":252},[717],{"type":37,"value":718},", ",{"type":32,"tag":229,"props":720,"children":721},{"style":314},[722],{"type":37,"value":723},"sku",{"type":32,"tag":229,"props":725,"children":726},{"style":246},[727],{"type":37,"value":327},{"type":32,"tag":229,"props":729,"children":730},{"style":356},[731],{"type":37,"value":359},{"type":32,"tag":229,"props":733,"children":734},{"style":252},[735],{"type":37,"value":718},{"type":32,"tag":229,"props":737,"children":738},{"style":314},[739],{"type":37,"value":740},"quantity",{"type":32,"tag":229,"props":742,"children":743},{"style":246},[744],{"type":37,"value":327},{"type":32,"tag":229,"props":746,"children":747},{"style":356},[748],{"type":37,"value":749}," number",{"type":32,"tag":229,"props":751,"children":752},{"style":252},[753],{"type":37,"value":754},") {\n",{"type":32,"tag":229,"props":756,"children":757},{"class":231,"line":367},[758,762,767,771,776],{"type":32,"tag":229,"props":759,"children":760},{"style":246},[761],{"type":37,"value":373},{"type":32,"tag":229,"props":763,"children":764},{"style":356},[765],{"type":37,"value":766}," apiRoot",{"type":32,"tag":229,"props":768,"children":769},{"style":246},[770],{"type":37,"value":383},{"type":32,"tag":229,"props":772,"children":773},{"style":303},[774],{"type":37,"value":775}," createApiRoot",{"type":32,"tag":229,"props":777,"children":778},{"style":252},[779],{"type":37,"value":780},"()\n",{"type":32,"tag":229,"props":782,"children":783},{"class":231,"line":406},[784],{"type":32,"tag":229,"props":785,"children":786},{"style":252},[787],{"type":37,"value":788},"  \n",{"type":32,"tag":229,"props":790,"children":791},{"class":231,"line":414},[792,796,801,805,809],{"type":32,"tag":229,"props":793,"children":794},{"style":246},[795],{"type":37,"value":373},{"type":32,"tag":229,"props":797,"children":798},{"style":356},[799],{"type":37,"value":800}," cart",{"type":32,"tag":229,"props":802,"children":803},{"style":246},[804],{"type":37,"value":383},{"type":32,"tag":229,"props":806,"children":807},{"style":246},[808],{"type":37,"value":388},{"type":32,"tag":229,"props":810,"children":811},{"style":252},[812],{"type":37,"value":813}," apiRoot\n",{"type":32,"tag":229,"props":815,"children":816},{"class":231,"line":428},[817,822,827],{"type":32,"tag":229,"props":818,"children":819},{"style":252},[820],{"type":37,"value":821},"    .",{"type":32,"tag":229,"props":823,"children":824},{"style":303},[825],{"type":37,"value":826},"carts",{"type":32,"tag":229,"props":828,"children":829},{"style":252},[830],{"type":37,"value":780},{"type":32,"tag":229,"props":832,"children":833},{"class":231,"line":26},[834,838,843],{"type":32,"tag":229,"props":835,"children":836},{"style":252},[837],{"type":37,"value":821},{"type":32,"tag":229,"props":839,"children":840},{"style":303},[841],{"type":37,"value":842},"withId",{"type":32,"tag":229,"props":844,"children":845},{"style":252},[846],{"type":37,"value":847},"({ ID: cartId })\n",{"type":32,"tag":229,"props":849,"children":850},{"class":231,"line":478},[851,855,860],{"type":32,"tag":229,"props":852,"children":853},{"style":252},[854],{"type":37,"value":821},{"type":32,"tag":229,"props":856,"children":857},{"style":303},[858],{"type":37,"value":859},"post",{"type":32,"tag":229,"props":861,"children":862},{"style":252},[863],{"type":37,"value":864},"({\n",{"type":32,"tag":229,"props":866,"children":867},{"class":231,"line":521},[868],{"type":32,"tag":229,"props":869,"children":870},{"style":252},[871],{"type":37,"value":872},"      body: {\n",{"type":32,"tag":229,"props":874,"children":875},{"class":231,"line":538},[876,881,886,890],{"type":32,"tag":229,"props":877,"children":878},{"style":252},[879],{"type":37,"value":880},"        version: ",{"type":32,"tag":229,"props":882,"children":883},{"style":356},[884],{"type":37,"value":885},"1",{"type":32,"tag":229,"props":887,"children":888},{"style":252},[889],{"type":37,"value":718},{"type":32,"tag":229,"props":891,"children":892},{"style":236},[893],{"type":37,"value":894},"\u002F\u002F optimistisches Locking\n",{"type":32,"tag":229,"props":896,"children":897},{"class":231,"line":547},[898],{"type":32,"tag":229,"props":899,"children":900},{"style":252},[901],{"type":37,"value":902},"        actions: [\n",{"type":32,"tag":229,"props":904,"children":906},{"class":231,"line":905},14,[907],{"type":32,"tag":229,"props":908,"children":909},{"style":252},[910],{"type":37,"value":911},"          {\n",{"type":32,"tag":229,"props":913,"children":915},{"class":231,"line":914},15,[916,921,926],{"type":32,"tag":229,"props":917,"children":918},{"style":252},[919],{"type":37,"value":920},"            action: ",{"type":32,"tag":229,"props":922,"children":923},{"style":263},[924],{"type":37,"value":925},"'addLineItem'",{"type":32,"tag":229,"props":927,"children":928},{"style":252},[929],{"type":37,"value":930},",\n",{"type":32,"tag":229,"props":932,"children":934},{"class":231,"line":933},16,[935],{"type":32,"tag":229,"props":936,"children":937},{"style":252},[938],{"type":37,"value":939},"            sku,\n",{"type":32,"tag":229,"props":941,"children":943},{"class":231,"line":942},17,[944],{"type":32,"tag":229,"props":945,"children":946},{"style":252},[947],{"type":37,"value":948},"            quantity,\n",{"type":32,"tag":229,"props":950,"children":952},{"class":231,"line":951},18,[953],{"type":32,"tag":229,"props":954,"children":955},{"style":252},[956],{"type":37,"value":957},"          },\n",{"type":32,"tag":229,"props":959,"children":961},{"class":231,"line":960},19,[962],{"type":32,"tag":229,"props":963,"children":964},{"style":252},[965],{"type":37,"value":966},"        ],\n",{"type":32,"tag":229,"props":968,"children":970},{"class":231,"line":969},20,[971],{"type":32,"tag":229,"props":972,"children":973},{"style":252},[974],{"type":37,"value":975},"      },\n",{"type":32,"tag":229,"props":977,"children":979},{"class":231,"line":978},21,[980],{"type":32,"tag":229,"props":981,"children":982},{"style":252},[983],{"type":37,"value":984},"    })\n",{"type":32,"tag":229,"props":986,"children":988},{"class":231,"line":987},22,[989,993,998],{"type":32,"tag":229,"props":990,"children":991},{"style":252},[992],{"type":37,"value":821},{"type":32,"tag":229,"props":994,"children":995},{"style":303},[996],{"type":37,"value":997},"execute",{"type":32,"tag":229,"props":999,"children":1000},{"style":252},[1001],{"type":37,"value":780},{"type":32,"tag":229,"props":1003,"children":1005},{"class":231,"line":1004},23,[1006],{"type":32,"tag":229,"props":1007,"children":1008},{"emptyLinePlaceholder":273},[1009],{"type":37,"value":276},{"type":32,"tag":229,"props":1011,"children":1013},{"class":231,"line":1012},24,[1014,1018],{"type":32,"tag":229,"props":1015,"children":1016},{"style":246},[1017],{"type":37,"value":420},{"type":32,"tag":229,"props":1019,"children":1020},{"style":252},[1021],{"type":37,"value":1022}," cart.body\n",{"type":32,"tag":229,"props":1024,"children":1026},{"class":231,"line":1025},25,[1027],{"type":32,"tag":229,"props":1028,"children":1029},{"style":252},[1030],{"type":37,"value":518},{"type":32,"tag":33,"props":1032,"children":1033},{},[1034],{"type":37,"value":1035},"Das Versioning-System von commercetools (optimistisches Locking) verhindert Concurrency-Probleme, aber jede Mutation benötigt einen Version Bump — bei Race Conditions musst du Retry-Logik selbst schreiben.",{"type":32,"tag":40,"props":1037,"children":1039},{"id":1038},"shopify-plus-hydrogen-plattform-sicherheit-begrenzte-flexibilität",[1040],{"type":37,"value":1041},"Shopify Plus + Hydrogen: Plattform-Sicherheit, begrenzte Flexibilität",{"type":32,"tag":33,"props":1043,"children":1044},{},[1045],{"type":37,"value":1046},"Shopify Hydrogen ist ein Remix-basiertes React Framework. Integriert mit Shopifys Storefront API (GraphQL), Deployment auf Oxygen Hosting (Shopifys Edge Network). 2025 kam Hydrogen 2.0 mit RSC-Unterstützung.",{"type":32,"tag":33,"props":1048,"children":1049},{},[1050,1055],{"type":32,"tag":76,"props":1051,"children":1052},{},[1053],{"type":37,"value":1054},"Plattform-Vorteil:",{"type":37,"value":1056}," PCI Compliance, Fraud Detection, Checkout Optimization sind in Shopify eingebaut. Du schreibst nur das Frontend. Plus Plan $2.300\u002FMonat, Transaction Fee %0,25 (mit Shopify Payments kostenlos).",{"type":32,"tag":33,"props":1058,"children":1059},{},[1060],{"type":32,"tag":76,"props":1061,"children":1062},{},[1063],{"type":37,"value":1064},"Produktions-Benchmark (Luxury Kosmetik Brand, 200K monatliche Sessions):",{"type":32,"tag":578,"props":1066,"children":1067},{},[1068,1073,1078],{"type":32,"tag":582,"props":1069,"children":1070},{},[1071],{"type":37,"value":1072},"LCP: 1,6s (Oxygen Edge, ISR Caching)",{"type":32,"tag":582,"props":1074,"children":1075},{},[1076],{"type":37,"value":1077},"Checkout Conversion: %4,2 (Shopify Native) vs %3,1 (Custom Headless Checkout)",{"type":32,"tag":582,"props":1079,"children":1080},{},[1081],{"type":37,"value":1082},"Development Velocity: MVP in 6 Wochen (Hydrogen Skeleton Starter)",{"type":32,"tag":33,"props":1084,"children":1085},{},[1086],{"type":37,"value":1087},"Die Limitation von Hydrogen: Du kannst nicht aus Shopifys Datenmodell ausbrechen. Es gibt Produktmetafields, aber für komplexe Beziehungen (z.B. B2B gestaffelte Preisgestaltung, Multi-Warehouse Routing) stößt du auf Shopifys Admin API. Für Custom Logic musst du Shopify Functions schreiben (Rust\u002FAssemblyScript) — das ist eine separate Lernkurve.",{"type":32,"tag":33,"props":1089,"children":1090},{},[1091],{"type":32,"tag":76,"props":1092,"children":1093},{},[1094],{"type":37,"value":1095},"Beispiel Hydrogen Query (Produktdetail):",{"type":32,"tag":218,"props":1097,"children":1099},{"className":220,"code":1098,"language":222,"meta":16,"style":16},"\u002F\u002F app\u002Froutes\u002Fproducts.$handle.tsx\nimport { useLoaderData } from '@remix-run\u002Freact'\nimport { json } from '@shopify\u002Fremix-oxygen'\n\nexport async function loader({ params, context }: LoaderArgs) {\n  const { product } = await context.storefront.query(PRODUCT_QUERY, {\n    variables: { handle: params.handle },\n  })\n\n  return json({ product })\n}\n\nconst PRODUCT_QUERY = `#graphql\n  query Product($handle: String!) {\n    product(handle: $handle) {\n      id\n      title\n      descriptionHtml\n      priceRange {\n        minVariantPrice { amount currencyCode }\n      }\n    }\n  }\n`\n",[1100],{"type":32,"tag":225,"props":1101,"children":1102},{"__ignoreMap":16},[1103,1111,1132,1153,1160,1214,1267,1275,1283,1290,1307,1314,1321,1343,1351,1359,1367,1375,1383,1391,1399,1407,1415,1423],{"type":32,"tag":229,"props":1104,"children":1105},{"class":231,"line":232},[1106],{"type":32,"tag":229,"props":1107,"children":1108},{"style":236},[1109],{"type":37,"value":1110},"\u002F\u002F app\u002Froutes\u002Fproducts.$handle.tsx\n",{"type":32,"tag":229,"props":1112,"children":1113},{"class":231,"line":242},[1114,1118,1123,1127],{"type":32,"tag":229,"props":1115,"children":1116},{"style":246},[1117],{"type":37,"value":249},{"type":32,"tag":229,"props":1119,"children":1120},{"style":252},[1121],{"type":37,"value":1122}," { useLoaderData } ",{"type":32,"tag":229,"props":1124,"children":1125},{"style":246},[1126],{"type":37,"value":260},{"type":32,"tag":229,"props":1128,"children":1129},{"style":263},[1130],{"type":37,"value":1131}," '@remix-run\u002Freact'\n",{"type":32,"tag":229,"props":1133,"children":1134},{"class":231,"line":269},[1135,1139,1144,1148],{"type":32,"tag":229,"props":1136,"children":1137},{"style":246},[1138],{"type":37,"value":249},{"type":32,"tag":229,"props":1140,"children":1141},{"style":252},[1142],{"type":37,"value":1143}," { json } ",{"type":32,"tag":229,"props":1145,"children":1146},{"style":246},[1147],{"type":37,"value":260},{"type":32,"tag":229,"props":1149,"children":1150},{"style":263},[1151],{"type":37,"value":1152}," '@shopify\u002Fremix-oxygen'\n",{"type":32,"tag":229,"props":1154,"children":1155},{"class":231,"line":279},[1156],{"type":32,"tag":229,"props":1157,"children":1158},{"emptyLinePlaceholder":273},[1159],{"type":37,"value":276},{"type":32,"tag":229,"props":1161,"children":1162},{"class":231,"line":367},[1163,1167,1171,1175,1180,1184,1188,1192,1197,1201,1205,1210],{"type":32,"tag":229,"props":1164,"children":1165},{"style":246},[1166],{"type":37,"value":285},{"type":32,"tag":229,"props":1168,"children":1169},{"style":246},[1170],{"type":37,"value":295},{"type":32,"tag":229,"props":1172,"children":1173},{"style":246},[1174],{"type":37,"value":300},{"type":32,"tag":229,"props":1176,"children":1177},{"style":303},[1178],{"type":37,"value":1179}," loader",{"type":32,"tag":229,"props":1181,"children":1182},{"style":252},[1183],{"type":37,"value":311},{"type":32,"tag":229,"props":1185,"children":1186},{"style":314},[1187],{"type":37,"value":317},{"type":32,"tag":229,"props":1189,"children":1190},{"style":252},[1191],{"type":37,"value":718},{"type":32,"tag":229,"props":1193,"children":1194},{"style":314},[1195],{"type":37,"value":1196},"context",{"type":32,"tag":229,"props":1198,"children":1199},{"style":252},[1200],{"type":37,"value":322},{"type":32,"tag":229,"props":1202,"children":1203},{"style":246},[1204],{"type":37,"value":327},{"type":32,"tag":229,"props":1206,"children":1207},{"style":303},[1208],{"type":37,"value":1209}," LoaderArgs",{"type":32,"tag":229,"props":1211,"children":1212},{"style":252},[1213],{"type":37,"value":754},{"type":32,"tag":229,"props":1215,"children":1216},{"class":231,"line":406},[1217,1221,1225,1230,1235,1239,1243,1248,1253,1257,1262],{"type":32,"tag":229,"props":1218,"children":1219},{"style":246},[1220],{"type":37,"value":373},{"type":32,"tag":229,"props":1222,"children":1223},{"style":252},[1224],{"type":37,"value":332},{"type":32,"tag":229,"props":1226,"children":1227},{"style":356},[1228],{"type":37,"value":1229},"product",{"type":32,"tag":229,"props":1231,"children":1232},{"style":252},[1233],{"type":37,"value":1234}," } ",{"type":32,"tag":229,"props":1236,"children":1237},{"style":246},[1238],{"type":37,"value":493},{"type":32,"tag":229,"props":1240,"children":1241},{"style":246},[1242],{"type":37,"value":388},{"type":32,"tag":229,"props":1244,"children":1245},{"style":252},[1246],{"type":37,"value":1247}," context.storefront.",{"type":32,"tag":229,"props":1249,"children":1250},{"style":303},[1251],{"type":37,"value":1252},"query",{"type":32,"tag":229,"props":1254,"children":1255},{"style":252},[1256],{"type":37,"value":700},{"type":32,"tag":229,"props":1258,"children":1259},{"style":356},[1260],{"type":37,"value":1261},"PRODUCT_QUERY",{"type":32,"tag":229,"props":1263,"children":1264},{"style":252},[1265],{"type":37,"value":1266},", {\n",{"type":32,"tag":229,"props":1268,"children":1269},{"class":231,"line":414},[1270],{"type":32,"tag":229,"props":1271,"children":1272},{"style":252},[1273],{"type":37,"value":1274},"    variables: { handle: params.handle },\n",{"type":32,"tag":229,"props":1276,"children":1277},{"class":231,"line":428},[1278],{"type":32,"tag":229,"props":1279,"children":1280},{"style":252},[1281],{"type":37,"value":1282},"  })\n",{"type":32,"tag":229,"props":1284,"children":1285},{"class":231,"line":26},[1286],{"type":32,"tag":229,"props":1287,"children":1288},{"emptyLinePlaceholder":273},[1289],{"type":37,"value":276},{"type":32,"tag":229,"props":1291,"children":1292},{"class":231,"line":478},[1293,1297,1302],{"type":32,"tag":229,"props":1294,"children":1295},{"style":246},[1296],{"type":37,"value":420},{"type":32,"tag":229,"props":1298,"children":1299},{"style":303},[1300],{"type":37,"value":1301}," json",{"type":32,"tag":229,"props":1303,"children":1304},{"style":252},[1305],{"type":37,"value":1306},"({ product })\n",{"type":32,"tag":229,"props":1308,"children":1309},{"class":231,"line":521},[1310],{"type":32,"tag":229,"props":1311,"children":1312},{"style":252},[1313],{"type":37,"value":518},{"type":32,"tag":229,"props":1315,"children":1316},{"class":231,"line":538},[1317],{"type":32,"tag":229,"props":1318,"children":1319},{"emptyLinePlaceholder":273},[1320],{"type":37,"value":276},{"type":32,"tag":229,"props":1322,"children":1323},{"class":231,"line":547},[1324,1329,1334,1338],{"type":32,"tag":229,"props":1325,"children":1326},{"style":246},[1327],{"type":37,"value":1328},"const",{"type":32,"tag":229,"props":1330,"children":1331},{"style":356},[1332],{"type":37,"value":1333}," PRODUCT_QUERY",{"type":32,"tag":229,"props":1335,"children":1336},{"style":246},[1337],{"type":37,"value":383},{"type":32,"tag":229,"props":1339,"children":1340},{"style":263},[1341],{"type":37,"value":1342}," `#graphql\n",{"type":32,"tag":229,"props":1344,"children":1345},{"class":231,"line":905},[1346],{"type":32,"tag":229,"props":1347,"children":1348},{"style":263},[1349],{"type":37,"value":1350},"  query Product($handle: String!) {\n",{"type":32,"tag":229,"props":1352,"children":1353},{"class":231,"line":914},[1354],{"type":32,"tag":229,"props":1355,"children":1356},{"style":263},[1357],{"type":37,"value":1358},"    product(handle: $handle) {\n",{"type":32,"tag":229,"props":1360,"children":1361},{"class":231,"line":933},[1362],{"type":32,"tag":229,"props":1363,"children":1364},{"style":263},[1365],{"type":37,"value":1366},"      id\n",{"type":32,"tag":229,"props":1368,"children":1369},{"class":231,"line":942},[1370],{"type":32,"tag":229,"props":1371,"children":1372},{"style":263},[1373],{"type":37,"value":1374},"      title\n",{"type":32,"tag":229,"props":1376,"children":1377},{"class":231,"line":951},[1378],{"type":32,"tag":229,"props":1379,"children":1380},{"style":263},[1381],{"type":37,"value":1382},"      descriptionHtml\n",{"type":32,"tag":229,"props":1384,"children":1385},{"class":231,"line":960},[1386],{"type":32,"tag":229,"props":1387,"children":1388},{"style":263},[1389],{"type":37,"value":1390},"      priceRange {\n",{"type":32,"tag":229,"props":1392,"children":1393},{"class":231,"line":969},[1394],{"type":32,"tag":229,"props":1395,"children":1396},{"style":263},[1397],{"type":37,"value":1398},"        minVariantPrice { amount currencyCode }\n",{"type":32,"tag":229,"props":1400,"children":1401},{"class":231,"line":978},[1402],{"type":32,"tag":229,"props":1403,"children":1404},{"style":263},[1405],{"type":37,"value":1406},"      }\n",{"type":32,"tag":229,"props":1408,"children":1409},{"class":231,"line":987},[1410],{"type":32,"tag":229,"props":1411,"children":1412},{"style":263},[1413],{"type":37,"value":1414},"    }\n",{"type":32,"tag":229,"props":1416,"children":1417},{"class":231,"line":1004},[1418],{"type":32,"tag":229,"props":1419,"children":1420},{"style":263},[1421],{"type":37,"value":1422},"  }\n",{"type":32,"tag":229,"props":1424,"children":1425},{"class":231,"line":1012},[1426],{"type":32,"tag":229,"props":1427,"children":1428},{"style":263},[1429],{"type":37,"value":1430},"`\n",{"type":32,"tag":33,"props":1432,"children":1433},{},[1434],{"type":37,"value":1435},"Shopifys Storefront API Rate Limit beträgt 2.000 Punkte\u002Fs (basierend auf Query-Komplexität). Bei Burst-Traffic bekommst du Throttling — dann musst du eine Redis Cache Layer hinzufügen, aber Oxygen Hosting unterstützt Redis nicht nativ, du musst einen externen Service wie Upstash nutzen.",{"type":32,"tag":40,"props":1437,"children":1439},{"id":1438},"entscheidungsmatrix-welcher-stack-für-welches-szenario",[1440],{"type":37,"value":1441},"Entscheidungsmatrix: Welcher Stack für welches Szenario",{"type":32,"tag":33,"props":1443,"children":1444},{},[1445],{"type":37,"value":1446},"Diese Matrix basiert auf Entscheidungskriterien aus echten Produktionsprojekten:",{"type":32,"tag":82,"props":1448,"children":1449},{},[1450,1471],{"type":32,"tag":86,"props":1451,"children":1452},{},[1453],{"type":32,"tag":90,"props":1454,"children":1455},{},[1456,1461,1466],{"type":32,"tag":94,"props":1457,"children":1458},{},[1459],{"type":37,"value":1460},"Szenario",{"type":32,"tag":94,"props":1462,"children":1463},{},[1464],{"type":37,"value":1465},"Empfohlener Stack",{"type":32,"tag":94,"props":1467,"children":1468},{},[1469],{"type":37,"value":1470},"Warum",{"type":32,"tag":110,"props":1472,"children":1473},{},[1474,1492,1510,1528,1546],{"type":32,"tag":90,"props":1475,"children":1476},{},[1477,1482,1487],{"type":32,"tag":117,"props":1478,"children":1479},{},[1480],{"type":37,"value":1481},"D2C Retail, \u003C$5M GMV",{"type":32,"tag":117,"props":1483,"children":1484},{},[1485],{"type":37,"value":1486},"Shopify Plus + Liquid Theme",{"type":32,"tag":117,"props":1488,"children":1489},{},[1490],{"type":37,"value":1491},"Composable ROI nicht sichtbar, Speed > Flexibilität",{"type":32,"tag":90,"props":1493,"children":1494},{},[1495,1500,1505],{"type":32,"tag":117,"props":1496,"children":1497},{},[1498],{"type":37,"value":1499},"D2C Retail, $5-20M GMV",{"type":32,"tag":117,"props":1501,"children":1502},{},[1503],{"type":37,"value":1504},"Shopify Plus + Hydrogen",{"type":32,"tag":117,"props":1506,"children":1507},{},[1508],{"type":37,"value":1509},"Headless Vorteil in CWV messbar, Checkout bleibt bei Shopify",{"type":32,"tag":90,"props":1511,"children":1512},{},[1513,1518,1523],{"type":32,"tag":117,"props":1514,"children":1515},{},[1516],{"type":37,"value":1517},"B2B Marketplace, komplexe Preisgestaltung",{"type":32,"tag":117,"props":1519,"children":1520},{},[1521],{"type":37,"value":1522},"commercetools + Next.js",{"type":32,"tag":117,"props":1524,"children":1525},{},[1526],{"type":37,"value":1527},"Custom Logic im Backend, Shopify Grenzen zu eng",{"type":32,"tag":90,"props":1529,"children":1530},{},[1531,1536,1541],{"type":32,"tag":117,"props":1532,"children":1533},{},[1534],{"type":37,"value":1535},"Fashion\u002FApparel, Multi-Brand",{"type":32,"tag":117,"props":1537,"children":1538},{},[1539],{"type":37,"value":1540},"BigCommerce Catalyst",{"type":32,"tag":117,"props":1542,"children":1543},{},[1544],{"type":37,"value":1545},"Katalogverwaltung stark, Frontend Flexibilität ausreichend",{"type":32,"tag":90,"props":1547,"children":1548},{},[1549,1554,1559],{"type":32,"tag":117,"props":1550,"children":1551},{},[1552],{"type":37,"value":1553},"Omnichannel (POS + Online)",{"type":32,"tag":117,"props":1555,"children":1556},{},[1557],{"type":37,"value":1558},"Shopify Plus (Monolith)",{"type":32,"tag":117,"props":1560,"children":1561},{},[1562],{"type":37,"value":1563},"POS-Integration nativ, Headless adds Komplexität",{"type":32,"tag":33,"props":1565,"children":1566},{},[1567,1572],{"type":32,"tag":76,"props":1568,"children":1569},{},[1570],{"type":37,"value":1571},"Kritischer Entscheidungsfaktor:",{"type":37,"value":1573}," Development Team Kapazität. Hydrogen geht mit 2 Frontend Entwicklern in Production. commercetools erfordert 1 Backend (API Integration), 2 Frontend, 1 DevOps (CI\u002FCD, Monitoring). In der TCO wiegen Personalkosten schwerer als Deployment-Geschwindigkeit.",{"type":32,"tag":40,"props":1575,"children":1577},{"id":1576},"die-echten-kosten-von-mach-versteckte-komplexität",[1578],{"type":37,"value":1579},"Die echten Kosten von MACH: Versteckte Komplexität",{"type":32,"tag":33,"props":1581,"children":1582},{},[1583],{"type":37,"value":1584},"Die nicht sichtbaren Kostenposten eines Composable Stacks:",{"type":32,"tag":1586,"props":1587,"children":1588},"ol",{},[1589,1599,1609],{"type":32,"tag":582,"props":1590,"children":1591},{},[1592,1597],{"type":32,"tag":76,"props":1593,"children":1594},{},[1595],{"type":37,"value":1596},"Monitoring:",{"type":37,"value":1598}," Monolithische Plattform = ein Dashboard, MACH = jeder Service separat (Datadog $180\u002FHost\u002FMonat, 8 Services = $1.440\u002FMonat).",{"type":32,"tag":582,"props":1600,"children":1601},{},[1602,1607],{"type":32,"tag":76,"props":1603,"children":1604},{},[1605],{"type":37,"value":1606},"Incident Response:",{"type":37,"value":1608}," Bei monolithischen Plattformen öffnest du ein Support Ticket, bei MACH bist du selbst On-Call. Wenn Cart API down ist — ist das Stripe, commercetools oder das Frontend? Debugging Multi-Vendor.",{"type":32,"tag":582,"props":1610,"children":1611},{},[1612,1617],{"type":32,"tag":76,"props":1613,"children":1614},{},[1615],{"type":37,"value":1616},"Upgrade Path:",{"type":37,"value":1618}," Shopify wird automatisch aktualisiert, commercetools API-Versionen migrierst du selbst (v1 → v2 Breaking Change hat uns letztes Jahr 3 Wochen gekostet).",{"type":32,"tag":33,"props":1620,"children":1621},{},[1622,1624,1633],{"type":37,"value":1623},"Bei unserer ",{"type":32,"tag":1625,"props":1626,"children":1630},"a",{"href":1627,"rel":1628},"https:\u002F\u002Fwww.roibase.com.tr\u002Fde\u002Fheadless",[1629],"nofollow",[1631],{"type":37,"value":1632},"Headless Commerce",{"type":37,"value":1634}," Arbeit beraten wir E-Commerce Marken bei Composable Migration — welche Schichten du headless machst, welche im Monolith bleiben, beschleunigt das Deployment um 40%.",{"type":32,"tag":40,"props":1636,"children":1638},{"id":1637},"erfolgskriterien-für-composable-in-production",[1639],{"type":37,"value":1640},"Erfolgskriterien für Composable in Production",{"type":32,"tag":33,"props":1642,"children":1643},{},[1644],{"type":37,"value":1645},"Wenn du nach 3 Monaten diese Metriken nicht hältst, denk über den Rückgang nach:",{"type":32,"tag":578,"props":1647,"children":1648},{},[1649,1659,1669,1679],{"type":32,"tag":582,"props":1650,"children":1651},{},[1652,1657],{"type":32,"tag":76,"props":1653,"children":1654},{},[1655],{"type":37,"value":1656},"LCP Verbesserung >%40:",{"type":37,"value":1658}," Die Kosten von Headless rechtfertigen sich nur mit dieser Performance-Steigerung.",{"type":32,"tag":582,"props":1660,"children":1661},{},[1662,1667],{"type":32,"tag":76,"props":1663,"children":1664},{},[1665],{"type":37,"value":1666},"Cart Abandonment Rate Abnahme >%8:",{"type":37,"value":1668}," Ein schneller Checkout-Flow muss sich in Conversion widerspiegeln.",{"type":32,"tag":582,"props":1670,"children":1671},{},[1672,1677],{"type":32,"tag":76,"props":1673,"children":1674},{},[1675],{"type":37,"value":1676},"Development Velocity:",{"type":37,"value":1678}," Neue Feature Deployment \u003C2 Wochen (vs. 4-6 bei Monolith).",{"type":32,"tag":582,"props":1680,"children":1681},{},[1682,1687],{"type":32,"tag":76,"props":1683,"children":1684},{},[1685],{"type":37,"value":1686},"Incident MTTR \u003C30 Min:",{"type":37,"value":1688}," Wenn du Microservice-Fehler nicht schnell isolieren kannst, steigt die operative Last.",{"type":32,"tag":33,"props":1690,"children":1691},{},[1692],{"type":37,"value":1693},"2026 ist Composable Commerce kein Dogma — es ist ein Engineering Trade-off. Die Stack-Auswahl sollte von GMV, Team-Kapazität und Custom Logic Requirements getrieben sein. Shopify Hydrogen ist das Sweet Spot für mittelständige D2C, commercetools für Enterprise B2B, BigCommerce Catalyst für Hybrid-Szenarien. Teste das MACH Manifest gegen Production Reality — jeder Microservice ist eine operative Belastung.",{"type":32,"tag":1695,"props":1696,"children":1697},"style",{},[1698],{"type":37,"value":1699},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":16,"searchDepth":269,"depth":269,"links":1701},[1702,1703,1704,1705,1706,1707,1708],{"id":42,"depth":242,"text":45},{"id":63,"depth":242,"text":66},{"id":560,"depth":242,"text":563},{"id":1038,"depth":242,"text":1041},{"id":1438,"depth":242,"text":1441},{"id":1576,"depth":242,"text":1579},{"id":1637,"depth":242,"text":1640},"markdown","content:de:tech:composable-commerce-mach-architektur-produktionsrealitaet.md","content","de\u002Ftech\u002Fcomposable-commerce-mach-architektur-produktionsrealitaet.md","de\u002Ftech\u002Fcomposable-commerce-mach-architektur-produktionsrealitaet","md",1778969026856]