[{"data":1,"prerenderedAt":470},["ShallowReactive",2],{"bootstrap":3,"blog-extending-commerce-layer":277},{"navigation":4,"globalConfig":196,"forms":218},{"headerSections":5,"headerFooterLinks":67,"footer":76,"legalLinks":153,"socialLinks":176},[6,39,44,50,57,62],{"hasSubMenu":7,"title":8,"links":9,"columns":38},true,"Product",[10,20,26,32],{"showTag":11,"_modelApiKey":12,"text":13,"subtitle":14,"icon":15,"isExternal":11,"link":16,"openForm":11},false,"navigation_link","Universal checkout","Sell anywhere","globe-simple",{"_modelApiKey":17,"slug":18,"title":19},"page","universal-checkout","Universal Checkout",{"showTag":11,"_modelApiKey":12,"text":21,"subtitle":22,"icon":23,"isExternal":11,"link":24,"openForm":11},"Distributed OMS","Manage orders","package",{"_modelApiKey":17,"slug":25,"title":21},"distributed-oms",{"showTag":11,"_modelApiKey":12,"text":27,"subtitle":28,"icon":29,"isExternal":11,"link":30,"openForm":11},"Promotion engine","Automated discounts","seal-percent",{"_modelApiKey":17,"slug":31,"title":27},"promotion-engine",{"showTag":11,"_modelApiKey":12,"text":33,"subtitle":34,"icon":35,"isExternal":11,"link":36,"openForm":11},"POS system","Operate stores","devices",{"_modelApiKey":17,"slug":37,"title":33},"pos-system",2,{"hasSubMenu":11,"showTag":11,"_modelApiKey":12,"text":40,"isExternal":11,"link":41,"openForm":11,"title":40},"Pricing",{"_modelApiKey":42,"slug":43},"pricing_page","pricing",{"hasSubMenu":11,"showTag":11,"_modelApiKey":12,"text":45,"isExternal":11,"link":46,"openForm":11,"title":45},"Customers",{"_modelApiKey":47,"slug":48,"title":49},"customer_landing_page","customers","Customers page",{"hasSubMenu":11,"showTag":11,"_modelApiKey":12,"text":51,"isExternal":11,"link":52,"openForm":11,"form":54,"title":51},"Partners",{"_modelApiKey":17,"slug":53,"title":51},"partners",{"_modelApiKey":55,"slug":53,"name":56},"form","PartnersForm",{"hasSubMenu":11,"showTag":11,"_modelApiKey":12,"text":58,"label":59,"isExternal":7,"url":60,"openForm":11,"title":61},"Docs Hub","Learn more","https:\u002F\u002Fdocs.commercelayer.io\u002F","Docs",{"hasSubMenu":11,"showTag":11,"_modelApiKey":12,"text":63,"isExternal":11,"link":64,"openForm":11,"title":63},"Blog",{"_modelApiKey":65,"slug":66},"blog_landing_page","blog",[68,72],{"text":69,"link":70},"Sign in",{"_modelApiKey":12,"text":69,"isExternal":7,"url":71,"openForm":11},"https:\u002F\u002Fdashboard.commercelayer.io\u002Fsign_in",{"text":73,"link":74},"Sign up for free",{"_modelApiKey":12,"text":73,"isExternal":7,"url":75,"openForm":11},"https:\u002F\u002Fdashboard.commercelayer.io\u002Fsign_up",[77,89,109,132],{"hasSubMenu":7,"title":8,"links":78},[79,81,83,85,87],{"showTag":11,"_modelApiKey":12,"text":13,"subtitle":14,"icon":15,"isExternal":11,"link":80,"openForm":11},{"_modelApiKey":17,"slug":18,"title":19},{"showTag":11,"_modelApiKey":12,"text":21,"subtitle":22,"icon":23,"isExternal":11,"link":82,"openForm":11},{"_modelApiKey":17,"slug":25,"title":21},{"showTag":11,"_modelApiKey":12,"text":27,"subtitle":28,"icon":29,"isExternal":11,"link":84,"openForm":11},{"_modelApiKey":17,"slug":31,"title":27},{"showTag":11,"_modelApiKey":12,"text":33,"subtitle":34,"icon":35,"isExternal":11,"link":86,"openForm":11},{"_modelApiKey":17,"slug":37,"title":33},{"showTag":11,"_modelApiKey":12,"text":40,"isExternal":11,"link":88,"openForm":11},{"_modelApiKey":42,"slug":43},{"hasSubMenu":7,"title":90,"links":91},"Resources",[92,94,99,104,107],{"showTag":11,"_modelApiKey":12,"text":93,"isExternal":7,"url":60,"openForm":11},"Documentation",{"showTag":11,"_modelApiKey":12,"text":95,"label":95,"isExternal":11,"link":96,"openForm":11},"Agentic Commerce",{"_modelApiKey":17,"slug":97,"title":98},"agentic-commerce-whitepaper","Agentic Commerce Whitepaper",{"showTag":11,"_modelApiKey":12,"text":100,"isExternal":11,"link":101,"openForm":11},"Core concepts",{"_modelApiKey":17,"slug":102,"title":103},"headless-commerce","Headless commerce",{"showTag":11,"_modelApiKey":12,"text":105,"isExternal":7,"url":106,"openForm":11},"Changelog","https:\u002F\u002Fdocs.commercelayer.io\u002Fchangelog\u002F",{"showTag":11,"_modelApiKey":12,"text":63,"isExternal":11,"link":108,"openForm":11},{"_modelApiKey":65,"slug":66},{"hasSubMenu":7,"title":110,"links":111},"Company",[112,116,118,121,126],{"showTag":11,"_modelApiKey":12,"text":113,"isExternal":11,"link":114,"openForm":11},"Vision",{"_modelApiKey":17,"slug":115,"title":113},"vision",{"showTag":11,"_modelApiKey":12,"text":45,"isExternal":11,"link":117,"openForm":11},{"_modelApiKey":47,"slug":48,"title":49},{"showTag":11,"_modelApiKey":12,"text":51,"isExternal":11,"link":119,"openForm":11,"form":120},{"_modelApiKey":17,"slug":53,"title":51},{"_modelApiKey":55,"slug":53,"name":56},{"showTag":11,"_modelApiKey":12,"text":122,"isExternal":11,"link":123,"openForm":11},"Security",{"_modelApiKey":17,"slug":124,"title":125},"security","Security at Commerce Layer",{"showTag":11,"_modelApiKey":12,"text":127,"label":128,"isExternal":11,"openForm":7,"form":129},"Giveback","Giveback program",{"_modelApiKey":55,"slug":130,"name":131},"giveback","GivebackForm",{"hasSubMenu":7,"title":133,"links":134},"Get in touch",[135,140,145,149],{"showTag":11,"_modelApiKey":12,"text":136,"isExternal":11,"openForm":7,"form":137},"Contact",{"_modelApiKey":55,"slug":138,"name":139},"contact","ContactUsForm",{"showTag":11,"_modelApiKey":12,"text":141,"isExternal":11,"openForm":7,"form":142},"Book a demo",{"_modelApiKey":55,"slug":143,"name":144},"demo","RequestDemoForm",{"showTag":11,"_modelApiKey":12,"text":146,"label":147,"isExternal":7,"url":148,"openForm":11},"Support","Email support","mailto:support@commercelayer.io",{"showTag":11,"_modelApiKey":12,"text":150,"label":151,"isExternal":7,"url":152,"openForm":11},"Community","Discord community","https:\u002F\u002Fdiscord.gg\u002Fcommercelayer",{"hasSubMenu":7,"title":154,"links":155},"Legal",[156,161,165,169,173],{"showTag":11,"_modelApiKey":12,"text":157,"label":158,"isExternal":7,"url":159,"openForm":11,"htmlClassNames":160},"Terms","Terms and conditions","\u002Flegal-embed\u002Fterms-of-service","iubenda-nostyle no-brand iubenda-noiframe iubenda-embed",{"showTag":11,"_modelApiKey":12,"text":162,"label":163,"isExternal":7,"url":164,"openForm":11,"htmlClassNames":160},"Privacy","Privacy policy","\u002Flegal-embed\u002Fprivacy-policy",{"showTag":11,"_modelApiKey":12,"text":166,"label":167,"isExternal":7,"url":168,"openForm":11,"htmlClassNames":160},"Cookies","Cookie policy","\u002Flegal-embed\u002Fcookie-policy",{"showTag":11,"_modelApiKey":12,"text":170,"isExternal":7,"url":171,"openForm":11,"htmlClassNames":172},"Notice at collection","#","iubenda-cs-uspr-link",{"showTag":11,"_modelApiKey":12,"text":174,"isExternal":7,"url":171,"openForm":11,"htmlClassNames":175},"Privacy preferences","iubenda-cs-preferences-link",[177,180,184,188,192],{"title":178,"type":179,"url":152,"isExternal":7},"Discord","discord-logo",{"title":181,"type":182,"url":183,"isExternal":7},"Github","github","https:\u002F\u002Fgithub.com\u002Fcommercelayer",{"title":185,"type":186,"url":187,"isExternal":7},"Bluesky","bluesky-logo","https:\u002F\u002Fbsky.app\u002Fprofile\u002Fcommercelayer.io",{"title":189,"type":190,"url":191,"isExternal":7},"X","x-logo","https:\u002F\u002Fx.com\u002Fcommercelayer",{"title":193,"type":194,"url":195,"isExternal":7},"LinkedIn","linkedin","https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fcommerce-layer",{"pagesWithoutCtaPanel":197,"ctaPanel":198,"notification":208,"showApiResponseTime":11,"newsletterSignup":216},[],{"title":199,"subtitle":200,"ctas":201},"Ready to get started?","Discover how we can help your business.",[202,205],{"_modelApiKey":203,"text":204,"isExternal":7,"url":75,"openForm":11},"link","Get started for free",{"_modelApiKey":203,"text":206,"isExternal":11,"openForm":7,"form":207},"Contact us",{"_modelApiKey":55,"slug":138,"name":139},{"showNotification":7,"link":209,"linkText":210,"text":215},{"_modelApiKey":203,"text":210,"isExternal":11,"link":211,"openForm":11},"Read article",{"_modelApiKey":212,"slug":213,"title":214},"blog_post","the-new-payments-api-built-for-how-people-pay-now","The new Payments API. Built for how people pay now.","\u003Cp>The new Payments API. Built for how people pay now.\u003C\u002Fp>\n",{"ctaText":217},"Subscribe",[219,225,229,236,240,246,249,253,261,262,267,272,274],{"_modelApiKey":55,"slug":220,"pardotFormEmbedCode":221,"formEmbedMinHeight":222,"successTitle":223,"successCopy":224},"agentic-commerce","https:\u002F\u002Fcommercelayer.fillout.com\u002Ft\u002F5w4Khwgxr6us?whitepaper=agentic",520,"Thank you for your request!","We’ll be in touch soon to arrange a date and time for your personalized demo.",{"_modelApiKey":55,"slug":226,"pardotFormEmbedCode":227,"formEmbedMinHeight":228,"successTitle":223,"successCopy":224},"shopify","https:\u002F\u002Fform.fillout.com\u002Ft\u002FgVnLSmKZwRus",850,{"_modelApiKey":55,"slug":130,"pardotFormEmbedCode":230,"formEmbedMinHeight":231,"displayTitle":232,"copy":233,"successTitle":234,"successCopy":235},"https:\u002F\u002Fform.fillout.com\u002Ft\u002FmVDF8aAiofus",500,"We give back.","\u003Cp>Part of Commerce Layer&#39;s company ethos is to empathize and support one another: co-workers, customers, and community. We want to do our part to help nonprofit organizations and small businesses who may feel adversely affected by the current global economic climate, and as a result, need in-kind support to reach their customers.\u003C\u002Fp>\n\n\u003Cp>If this general description matches your organization’s needs, please tell us your story by completing the following form so we can consider helping your cause.\u003C\u002Fp>\n","Thank you!","We will contact you soon to learn more about your story.",{"_modelApiKey":55,"slug":237,"pardotFormEmbedCode":227,"formEmbedMinHeight":228,"displayTitle":238,"copy":239},"book-an-onboarding-session","Book an onboarding session","\u003Cp>Schedule some time and our devs will help you set up a Commerce Layer + Sanity store.\u003C\u002Fp>\n",{"_modelApiKey":55,"slug":241,"pardotFormEmbedCode":242,"formEmbedMinHeight":243,"displayTitle":244,"successTitle":234,"successCopy":245},"download-our-whitepaper","https:\u002F\u002Fform.fillout.com\u002Ft\u002F5YPWmy8oT7us?whitepaper=ComposableCommerce",450,"Download our whitepaper.","Check your inbox. You should receive a download link soon.",{"_modelApiKey":55,"slug":247,"pardotFormEmbedCode":248,"formEmbedMinHeight":243,"displayTitle":244,"successTitle":234,"successCopy":245},"download-the-content-and-commerce-whitepaper","https:\u002F\u002Fform.fillout.com\u002Ft\u002F5YPWmy8oT7us?whitepaper=ContentAndCommerce",{"_modelApiKey":55,"slug":250,"pardotFormEmbedCode":251,"formEmbedMinHeight":243,"displayTitle":244,"copy":252,"successTitle":234,"successCopy":245},"whitepaper","https:\u002F\u002Fform.fillout.com\u002Ft\u002F5YPWmy8oT7us?whitepaper=Jamstack","\u003Cp>Commerce Layer is the perfect platform for building commerce on the Jamstack. Convert any design into pixel perfect HTML pages. Connect a best-of-breed headless CMS. Go serverless and forget the hassle of managing complex infrastructures.\u003C\u002Fp>\n",{"_modelApiKey":55,"slug":254,"pardotFormEmbedCode":255,"formEmbedMinHeight":256,"displayTitle":257,"copy":258,"successTitle":259,"successCopy":260},"contact-links","https:\u002F\u002Fform.fillout.com\u002Ft\u002FeWPyhHGHT7us",750,"Contact us.","\u003Cp>Tell us about your project. Our team will reach out to you for a personalized offer.\u003C\u002Fp>\n","Thanks for your message!","We’ll be in touch soon to discuss your project details.",{"_modelApiKey":55,"slug":138,"pardotFormEmbedCode":255,"formEmbedMinHeight":256,"displayTitle":257,"copy":258,"successTitle":259,"successCopy":260},{"_modelApiKey":55,"slug":263,"pardotFormEmbedCode":227,"formEmbedMinHeight":228,"displayTitle":264,"successTitle":265,"successCopy":266},"demo-embed","Want to see it in action? Request a demo.","Thanks for your request!","We’ll be in touch soon to arrange a date and time for your free live demo.",{"_modelApiKey":55,"slug":53,"pardotFormEmbedCode":268,"formEmbedMinHeight":228,"displayTitle":269,"copy":270,"successTitle":234,"successCopy":271},"https:\u002F\u002Fform.fillout.com\u002Ft\u002F9MTkDWMUSqus","Become our partner.","\u003Cp>Join us and get our guidance in helping your clients succeed. Our partners are our ambassadors. We are committed to your success as much as you are.\u003C\u002Fp>\n","We will contact you soon to discuss the details of our partnership.",{"_modelApiKey":55,"slug":273,"pardotFormEmbedCode":268,"formEmbedMinHeight":228,"displayTitle":269,"copy":270,"successTitle":234,"successCopy":271},"partners-embed",{"_modelApiKey":55,"slug":143,"pardotFormEmbedCode":227,"formEmbedMinHeight":228,"displayTitle":275,"copy":276,"successTitle":265,"successCopy":266},"Get a free live demo.","\u003Cp>Get a personalized demo and learn more about what Commerce Layer can do for your company.\u003C\u002Fp>\n",{"_modelApiKey":212,"link":278,"subtitle":283,"date":283,"author":284,"additionalAuthors":294,"icon":295,"abstract":296,"tag":297,"displayTitle":279,"cardRatio":299,"featured":11,"seoMetaTags":300,"layout":364,"blogPostCarousel":302,"_seoMetaTags":431,"authors":465},{"text":279,"isExternal":11,"url":280,"link":281},"Don't customize, compose! Extending Commerce Layer.","",{"_modelApiKey":212,"slug":282},"extending-commerce-layer","October 26, 2026",{"name":285,"picture":286},"Sara Bonechi",{"url":287,"alt":288,"title":288,"width":289,"height":289,"format":290,"focalPoint":291,"customData":293},"https:\u002F\u002Fwww.datocms-assets.com\u002F35053\u002F1764784884-sara.jpg","Sara Bonechi avatar",1280,"jpg",{"x":292,"y":292},0.5,{},[],"plus-circle","Discover how Commerce Layer's extensible architecture lets businesses implement custom pricing, shipping, and business logic while keeping their commerce platform maintainable and upgradeable.",{"color":298,"name":100},"gray","portrait",[301,305,309,312,316,319,322,326,330,334,337,341,345,349,353,356,360],{"attributes":302,"tag":303,"content":304},null,"title","Don't customize, compose! Extending Commerce Layer",{"attributes":306,"tag":308,"content":302},{"property":307,"content":304},"og:title","meta",{"attributes":310,"tag":308,"content":302},{"name":311,"content":304},"twitter:title",{"attributes":313,"tag":308,"content":302},{"name":314,"content":315},"description","Discover how Commerce Layer helps businesses adapt commerce to their needs with external integrations, custom logic, and an extensible architecture.",{"attributes":317,"tag":308,"content":302},{"property":318,"content":315},"og:description",{"attributes":320,"tag":308,"content":302},{"name":321,"content":315},"twitter:description",{"attributes":323,"tag":308,"content":302},{"property":324,"content":325},"og:image","https:\u002F\u002Fwww.datocms-assets.com\u002F35053\u002F1792772136-extending-commerce-layer.jpg?auto=format&fit=max&w=1200",{"attributes":327,"tag":308,"content":302},{"property":328,"content":329},"og:image:width","1200",{"attributes":331,"tag":308,"content":302},{"property":332,"content":333},"og:image:height","630",{"attributes":335,"tag":308,"content":302},{"name":336,"content":325},"twitter:image",{"attributes":338,"tag":308,"content":302},{"property":339,"content":340},"og:locale","en",{"attributes":342,"tag":308,"content":302},{"property":343,"content":344},"og:type","article",{"attributes":346,"tag":308,"content":302},{"property":347,"content":348},"og:site_name","Commerce Layer",{"attributes":350,"tag":308,"content":302},{"property":351,"content":352},"article:modified_time","2026-10-23T20:49:06Z",{"attributes":354,"tag":308,"content":302},{"property":355,"content":280},"article:publisher",{"attributes":357,"tag":308,"content":302},{"name":358,"content":359},"twitter:card","summary_large_image",{"attributes":361,"tag":308,"content":302},{"name":362,"content":363},"twitter:site","@commercelayer",[365,371,374,377,380,383,387,390,393,396,399,402,405,408,414,417,420,426,429],{"_modelApiKey":366,"copy":367,"listStyle":368,"darkTheme":11,"buttons":369,"color":370,"indent":7},"wysiwyg","\u003Cp>The best commerce platform isn&#39;t the one that promises to do everything. It&#39;s the one that lets you build exactly what your business needs, without getting in your way.\u003C\u002Fp>\n\n\u003Cp>Traditional commerce suites offer a reassuring proposition: catalog, pricing, checkout, promotions, and order management, all in one system. The demo looks convincing. Everything works together, and most of what you need is already there.\u003C\u002Fp>\n\n\u003Cp>But businesses rarely operate exactly as a platform expects them to.\u003C\u002Fp>\n\n\u003Cp>What happens when prices need to change every hour? When shipping costs depend on which products can travel together? When hundreds of customers have their own negotiated prices?\u003C\u002Fp>\n\n\u003Cp>These aren&#39;t theoretical edge cases. They&#39;re real requirements that Commerce Layer customers deal with every day. And that&#39;s exactly why you build \u003Cem>around\u003C\u002Fem> the platform, not inside it.\u003C\u002Fp>\n\n\u003Cp>These aren’t theoretical edge cases. They’re real requirements that Commerce Layer customers deal with every day. And that’s exactly why you build \u003Cem>around\u003C\u002Fem> the platform, not \u003Cem>against\u003C\u002Fem> it — and why our architecture starts from that idea.\u003C\u002Fp>\n","checkbox",[],"orange",{"_modelApiKey":372,"copy":373,"color":370},"highlight_block","Commerce Layer is designed to be extended, not customized from the inside.",{"_modelApiKey":366,"copy":375,"listStyle":368,"darkTheme":11,"buttons":376,"color":370,"indent":11},"\u003Ch3>Your business logic shouldn&#39;t live in your commerce platform\u003C\u002Fh3>\n\n\u003Cp>In a traditional monolith, complex business requirements can lead to modifications deep inside the platform. Over time, those customizations become harder to maintain, test, and upgrade.\u003C\u002Fp>\n\n\u003Cp>Commerce Layer takes a different approach.\u003C\u002Fp>\n\n\u003Cp>Its API-first architecture lets you keep business-specific logic in external services, connected to the commerce engine through APIs, webhooks, and native integration points.\u003C\u002Fp>\n\n\u003Cp>Commerce Layer handles the core commerce capabilities. Your services handle what makes your business unique.\u003C\u002Fp>\n\n\u003Cp>This separation means you don&#39;t have to force every requirement into the platform&#39;s data model or replicate logic that already exists elsewhere. And the benefits become particularly clear when you look at real implementations.\u003C\u002Fp>\n",[],{"_modelApiKey":366,"copy":378,"listStyle":368,"darkTheme":11,"buttons":379,"color":370,"indent":11},"\u003Ch3>Real businesses, real complexity, no platform modifications\u003C\u002Fh3>\n\n\u003Cp>Different businesses face different kinds of complexity, from prices that shift with the market to shipping rules and omnichannel consistency.\u003C\u002Fp>\n\n\u003Cp>Here are four examples of how Commerce Layer helps solve these challenges through external services and integrations, without modifying the platform itself.\u003C\u002Fp>\n",[],{"_modelApiKey":366,"copy":381,"listStyle":368,"darkTheme":11,"buttons":382,"color":370,"indent":11},"\u003Ch4>Prices that change every hour\u003C\u002Fh4>\n\n\u003Cp>One Commerce Layer customer operates in a highly competitive market where pricing needs to react quickly. Their system regularly scrapes competitors&#39; websites, compares prices using an external pricing engine, and updates its pricing decisions every hour. Rather than rebuilding this sophisticated logic inside the commerce platform, the customer keeps it in a dedicated service.\u003C\u002Fp>\n\n\u003Cp>Commerce Layer&#39;s external pricing integration allows the commerce flow to retrieve prices from that service when needed. \u003C\u002Fp>\n",[],{"_modelApiKey":384,"icon":385,"copy":386,"color":370},"banner","currency-dollar","\u003Cp>The result is a pricing strategy that can evolve independently of the commerce engine.\u003C\u002Fp>\n",{"_modelApiKey":366,"copy":388,"listStyle":368,"darkTheme":11,"buttons":389,"color":370,"indent":11},"\u003Ch4>Shipping a fridge isn&#39;t the same as shipping a toaster\u003C\u002Fh4>\n\n\u003Cp>Another Commerce Layer customer sells home appliances, from small toasters to large refrigerators.Their shipping requirements are anything but standard. A toaster can be shipped alongside a refrigerator without significantly changing the delivery requirements. But the reverse isn&#39;t necessarily true: adding a refrigerator to a shipment containing only small appliances changes the logistics entirely. A refrigerator may require two people for delivery. Two refrigerators, however, don&#39;t necessarily require four.\u003C\u002Fp>\n\n\u003Cp>Standard shipping rules based on weight, quantity, or cart value can&#39;t adequately express this complexity. The customer built a custom shipping calculation service that understands product combinations, delivery constraints, and the resources required to fulfill an order.\u003C\u002Fp>\n\n\u003Cp>Commerce Layer integrates with that service through external shipping methods, allowing the customer to apply its own logistics intelligence without modifying the commerce engine.\u003C\u002Fp>\n",[],{"_modelApiKey":384,"icon":391,"copy":392,"color":370},"truck","\u003Cp>The platform doesn&#39;t need to understand every possible shipping scenario. It needs to give the business the right way to handle it.\u003C\u002Fp>\n",{"_modelApiKey":366,"copy":394,"listStyle":368,"darkTheme":11,"buttons":395,"color":370,"indent":11},"\u003Ch4>One pricing service, every sales channel\u003C\u002Fh4>\n\n\u003Cp>A fashion retailer using Commerce Layer operates across multiple customer touchpoints: ecommerce websites, in-store sales applications, and iPads used by store associates. All these channels need access to consistent, up-to-date prices.\u003C\u002Fp>\n\n\u003Cp>Instead of maintaining separate pricing logic for every application, the retailer built a centralized pricing service that acts as the source of truth across its sales ecosystem.\u003C\u002Fp>\n\n\u003Cp>Commerce Layer&#39;s external pricing capabilities allow its commerce experiences to use that same service. Prices are managed in one place, while each channel can deliver the experience it needs.\u003C\u002Fp>\n",[],{"_modelApiKey":384,"icon":397,"copy":398,"color":370},"globe-hemisphere-west","\u003Cp>The advantage isn&#39;t just flexibility. It&#39;s consistency across a complex omnichannel architecture.\u003C\u002Fp>\n",{"_modelApiKey":366,"copy":400,"listStyle":368,"darkTheme":11,"buttons":401,"color":370,"indent":11},"\u003Ch4>Thousands of customer-specific prices, without hundreds of markets\u003C\u002Fh4>\n\n\u003Cp>For B2B businesses, pricing complexity can grow quickly.\u003C\u002Fp>\n\n\u003Cp>One Commerce Layer customer has an extensive catalog with customer-specific prices managed in its ERP. Trying to represent every pricing variation through native market configurations would have meant creating hundreds of markets and maintaining an increasingly complex setup.\u003C\u002Fp>\n\n\u003Cp>Instead, the business chose a much simpler architecture: one Commerce Layer market per currency, with customer-specific prices resolved externally. The ERP remains the source of truth for pricing, and Commerce Layer retrieves the appropriate price through its external pricing integration. No duplication of the entire price structure. No unnecessary proliferation of markets. No need to rebuild established ERP pricing logic inside the commerce platform.\u003C\u002Fp>\n",[],{"_modelApiKey":384,"icon":403,"copy":404,"color":370},"arrows-split","\u003Cp>Just a clean separation between commerce execution and customer-specific pricing intelligence.\u003C\u002Fp>\n",{"_modelApiKey":366,"copy":406,"listStyle":368,"darkTheme":11,"buttons":407,"color":370,"indent":11},"\u003Ch3>Two ways to extend Commerce Layer\u003C\u002Fh3>\n\n\u003Cp>These examples share a common principle: business-specific logic lives outside the commerce engine.\u003C\u002Fp>\n\n\u003Cp>Commerce Layer supports two complementary extension patterns:\u003C\u002Fp>\n\n\u003Cul>\n\u003Cli>\u003Cstrong>\u003Cem>Synchronous integrations\u003C\u002Fem>\u003C\u002Fstrong>---Allow Commerce Layer to call external services during a commerce flow, when an immediate response is needed. External \u003Ca href=\"https:\u002F\u002Fdocs.commercelayer.io\u002Fcore\u002Fexternal-resources\u002Fexternal-prices\">pricing\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fdocs.commercelayer.io\u002Fcore\u002Fexternal-resources\u002Fexternal-shipping-costs\">shipping costs\u003C\u002Fa>, and \u003Ca href=\"https:\u002F\u002Fdocs.commercelayer.io\u002Fcore\u002Fexternal-resources\u002Fexternal-order-validation\">order validation\u003C\u002Fa> are examples.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Cem>Asynchronous integrations\u003C\u002Fem>\u003C\u002Fstrong>---Use webhooks and events to trigger actions after something happens in Commerce Layer, such as synchronizing orders with an ERP, updating a CRM, or orchestrating fulfillment workflows.\u003C\u002Fli>\n\u003C\u002Ful>\n\n\u003Cp>Both approaches allow developers to build focused services using the technologies and infrastructure they prefer. And because these services interact with Commerce Layer through documented interfaces, they can be developed, tested, and deployed independently of the platform&#39;s internal code.\u003C\u002Fp>\n",[],{"_modelApiKey":409,"title":410,"preTitle":280,"linkText":411,"darkTheme":11,"link":412},"link_block","Developer Hub","Read the docs",{"_modelApiKey":203,"text":413,"label":280,"subtitle":280,"icon":280,"isExternal":7,"url":60,"link":302,"anchor":280,"openForm":11,"form":302,"htmlClassNames":280},"Read more",{"_modelApiKey":366,"copy":415,"listStyle":368,"darkTheme":11,"buttons":416,"color":370,"indent":11},"\u003Ch3>Upgrade Commerce Layer, not your customizations\u003C\u002Fh3>\n\n\u003Cp>This separation has an important long-term consequence.\u003C\u002Fp>\n\n\u003Cp>In a heavily customized monolith, platform upgrades can require reconciling custom code with changes to the underlying product. What begins as a small modification can eventually become an expensive maintenance commitment.\u003C\u002Fp>\n\n\u003Cp>With Commerce Layer, custom logic doesn&#39;t need to be merged into the platform whenever it evolves.\u003C\u002Fp>\n\n\u003Cp>Commerce Layer continuously improves its managed commerce infrastructure, while your extensions remain independently maintained through supported integration contracts. You can change your pricing algorithm without modifying your checkout engine. You can improve shipping calculations without touching order management. You can connect a new ERP without rebuilding your commerce platform.\u003C\u002Fp>\n\n\u003Cp>Integrations still need testing and maintenance, particularly when APIs or dependencies evolve. But that work stays focused on the services you own, rather than on maintaining a private version of the commerce platform.\u003C\u002Fp>\n",[],{"_modelApiKey":366,"copy":418,"listStyle":368,"darkTheme":11,"buttons":419,"color":370,"indent":11},"\u003Ch3>AI makes this architecture even more valuable\u003C\u002Fh3>\n\n\u003Cp>AI coding assistants are making small, well-defined services faster to build and maintain.\u003C\u002Fp>\n\n\u003Cp>A pricing integration, a shipping calculation service, or an event-driven workflow has a clear purpose and a defined interface. These are exactly the kinds of components AI-assisted development can help teams implement, test, and evolve efficiently.\u003C\u002Fp>\n\n\u003Cp>Instead of asking AI to modify a large, tightly coupled commerce application, developers can focus on independent services that interact with Commerce Layer through documented APIs. The platform stays stable. Custom logic stays manageable. And experimenting with new capabilities becomes easier.\u003C\u002Fp>\n",[],{"_modelApiKey":409,"title":421,"preTitle":280,"linkText":422,"darkTheme":11,"link":423},"Build with AI","Get started",{"_modelApiKey":203,"text":424,"label":280,"subtitle":280,"icon":280,"isExternal":7,"url":425,"link":302,"anchor":280,"openForm":11,"form":302,"htmlClassNames":280},"AI Docs","https:\u002F\u002Fdocs.commercelayer.io\u002Fai",{"_modelApiKey":366,"copy":427,"listStyle":368,"darkTheme":11,"buttons":428,"color":370,"indent":11},"\u003Ch3>One engine, endless business models\u003C\u002Fh3>\n\n\u003Cp>The four customers above have very different requirements. \u003C\u002Fp>\n\n\u003Cul>\n\u003Cli>One needs prices that react to competitors every hour.\u003C\u002Fli>\n\u003Cli>Another needs shipping calculations that understand the physical realities of delivering appliances.\u003C\u002Fli>\n\u003Cli>A fashion retailer needs consistent pricing across channels.\u003C\u002Fli>\n\u003Cli>A B2B business needs to support extensive customer-specific pricing without an explosion of market configurations.\u003C\u002Fli>\n\u003C\u002Ful>\n\n\u003Cp>Commerce Layer doesn&#39;t need to have every one of these business rules built into its core.\u003C\u002Fp>\n\n\u003Cp>\u003Cem>That&#39;s the point\u003C\u002Fem>.\u003C\u002Fp>\n\n\u003Cp>Commerce Layer provides a reliable, extensible commerce engine and gives businesses the freedom to connect the systems, services, and logic that make them competitive.\u003C\u002Fp>\n\n\u003Cp>You don&#39;t have to replace what already works. You don&#39;t have to compromise on your business requirements. And you don&#39;t have to maintain a customized version of your commerce platform.\u003C\u002Fp>\n",[],{"_modelApiKey":372,"copy":430,"color":370},"Build what makes you different, outside the platform. Let Commerce Layer power the commerce underneath.",[432,433,435,437,439,441,443,445,447,449,451,453,455,457,459,461,463],{"attributes":302,"tag":303,"content":304},{"attributes":434,"tag":308,"content":302},{"property":307,"content":304},{"attributes":436,"tag":308,"content":302},{"name":311,"content":304},{"attributes":438,"tag":308,"content":302},{"name":314,"content":315},{"attributes":440,"tag":308,"content":302},{"property":318,"content":315},{"attributes":442,"tag":308,"content":302},{"name":321,"content":315},{"attributes":444,"tag":308,"content":302},{"property":324,"content":325},{"attributes":446,"tag":308,"content":302},{"property":328,"content":329},{"attributes":448,"tag":308,"content":302},{"property":332,"content":333},{"attributes":450,"tag":308,"content":302},{"name":336,"content":325},{"attributes":452,"tag":308,"content":302},{"property":339,"content":340},{"attributes":454,"tag":308,"content":302},{"property":343,"content":344},{"attributes":456,"tag":308,"content":302},{"property":347,"content":348},{"attributes":458,"tag":308,"content":302},{"property":351,"content":352},{"attributes":460,"tag":308,"content":302},{"property":355,"content":280},{"attributes":462,"tag":308,"content":302},{"name":358,"content":359},{"attributes":464,"tag":308,"content":302},{"name":362,"content":363},[466],{"name":285,"picture":467},{"url":287,"alt":288,"title":288,"width":289,"height":289,"format":290,"focalPoint":468,"customData":469},{"x":292,"y":292},{},1793010944022]