[{"data":1,"prerenderedAt":1411},["ShallowReactive",2],{"navigation_docs":3,"-docs-storefront-sdk-resources-cart":357,"-docs-storefront-sdk-resources-cart-surround":1406,"docs-site-config":1396},[4,74,135,139,161,195,273],{"title":5,"path":6,"stem":7,"children":8},"Assets API","\u002Fdocs\u002Fassets","docs\u002Fassets\u002Findex",[9,10,32,57],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13,"children":14,"page":31},"Getting Started","\u002Fdocs\u002Fassets\u002Fgetting-started","docs\u002Fassets\u002F1.getting-started",[15,19,23,27],{"title":16,"path":17,"stem":18},"Base URL","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Fbase-url","docs\u002Fassets\u002F1.getting-started\u002F1.base-url",{"title":20,"path":21,"stem":22},"Important Notes","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Fimportant-notes","docs\u002Fassets\u002F1.getting-started\u002F2.important-notes",{"title":24,"path":25,"stem":26},"URL Format","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Furl-format","docs\u002Fassets\u002F1.getting-started\u002F3.url-format",{"title":28,"path":29,"stem":30},"Custom Domains","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Fcustom-domains","docs\u002Fassets\u002F1.getting-started\u002F4.custom-domains",false,{"title":33,"path":34,"stem":35,"children":36,"page":31},"Usage","\u002Fdocs\u002Fassets\u002Fusage","docs\u002Fassets\u002F2.usage",[37,41,45,49,53],{"title":38,"path":39,"stem":40},"Transforms","\u002Fdocs\u002Fassets\u002Fusage\u002Ftransforms","docs\u002Fassets\u002F2.usage\u002F1.transforms",{"title":42,"path":43,"stem":44},"Caching","\u002Fdocs\u002Fassets\u002Fusage\u002Fcaching","docs\u002Fassets\u002F2.usage\u002F2.caching",{"title":46,"path":47,"stem":48},"Recipes","\u002Fdocs\u002Fassets\u002Fusage\u002Frecipes","docs\u002Fassets\u002F2.usage\u002F3.recipes",{"title":50,"path":51,"stem":52},"Best Practices","\u002Fdocs\u002Fassets\u002Fusage\u002Fbest-practices","docs\u002Fassets\u002F2.usage\u002F4.best-practices",{"title":54,"path":55,"stem":56},"Reference","\u002Fdocs\u002Fassets\u002Fusage\u002Freference","docs\u002Fassets\u002F2.usage\u002F5.reference",{"title":58,"path":59,"stem":60,"children":61,"page":31},"Integration","\u002Fdocs\u002Fassets\u002Fintegration","docs\u002Fassets\u002F3.integration",[62,66,70],{"title":63,"path":64,"stem":65},"Nuxt","\u002Fdocs\u002Fassets\u002Fintegration\u002Fnuxt","docs\u002Fassets\u002F3.integration\u002F1.nuxt",{"title":67,"path":68,"stem":69},"Next.js","\u002Fdocs\u002Fassets\u002Fintegration\u002Fnextjs","docs\u002Fassets\u002F3.integration\u002F2.nextjs",{"title":71,"path":72,"stem":73},"Plain HTML","\u002Fdocs\u002Fassets\u002Fintegration\u002Fhtml","docs\u002Fassets\u002F3.integration\u002F3.html",{"title":75,"path":76,"stem":77,"children":78},"Avvyr CMS","\u002Fdocs\u002Fcms","docs\u002Fcms\u002Findex",[79,80,92,105,118,131],{"title":75,"path":76,"stem":77},{"title":11,"path":81,"stem":82,"children":83,"page":31},"\u002Fdocs\u002Fcms\u002Fgetting-started","docs\u002Fcms\u002F1.getting-started",[84,88],{"title":85,"path":86,"stem":87},"Quickstart","\u002Fdocs\u002Fcms\u002Fgetting-started\u002Fquickstart","docs\u002Fcms\u002F1.getting-started\u002F1.quickstart",{"title":89,"path":90,"stem":91},"Keys and access","\u002Fdocs\u002Fcms\u002Fgetting-started\u002Fkeys-and-access","docs\u002Fcms\u002F1.getting-started\u002F2.keys-and-access",{"title":93,"path":94,"stem":95,"children":96,"page":31},"Content Model","\u002Fdocs\u002Fcms\u002Fcontent-model","docs\u002Fcms\u002F2.content-model",[97,101],{"title":98,"path":99,"stem":100},"Types and fields","\u002Fdocs\u002Fcms\u002Fcontent-model\u002Ftypes-and-fields","docs\u002Fcms\u002F2.content-model\u002F1.types-and-fields",{"title":102,"path":103,"stem":104},"Entries and publishing","\u002Fdocs\u002Fcms\u002Fcontent-model\u002Fentries-and-publishing","docs\u002Fcms\u002F2.content-model\u002F2.entries-and-publishing",{"title":106,"path":107,"stem":108,"children":109,"page":31},"Delivery","\u002Fdocs\u002Fcms\u002Fdelivery","docs\u002Fcms\u002F3.delivery",[110,114],{"title":111,"path":112,"stem":113},"Delivery API","\u002Fdocs\u002Fcms\u002Fdelivery\u002Fdelivery-api","docs\u002Fcms\u002F3.delivery\u002F1.delivery-api",{"title":115,"path":116,"stem":117},"Preview and live editing","\u002Fdocs\u002Fcms\u002Fdelivery\u002Fpreview","docs\u002Fcms\u002F3.delivery\u002F2.preview",{"title":119,"path":120,"stem":121,"children":122,"page":31},"Frameworks","\u002Fdocs\u002Fcms\u002Fframeworks","docs\u002Fcms\u002F4.frameworks",[123,127],{"title":124,"path":125,"stem":126},"JavaScript client","\u002Fdocs\u002Fcms\u002Fframeworks\u002Fjavascript-client","docs\u002Fcms\u002F4.frameworks\u002F1.javascript-client",{"title":128,"path":129,"stem":130},"Nuxt layer","\u002Fdocs\u002Fcms\u002Fframeworks\u002Fnuxt","docs\u002Fcms\u002F4.frameworks\u002F2.nuxt",{"title":132,"path":133,"stem":134},"Management API","\u002Fdocs\u002Fcms\u002Fmanagement-api","docs\u002Fcms\u002F5.management-api",{"title":136,"path":137,"stem":138},"Early Access","\u002Fdocs\u002Fearly-access","docs\u002Fearly-access",{"title":140,"path":141,"stem":142,"children":143},"Events API","\u002Fdocs\u002Fevents","docs\u002Fevents\u002Findex",[144,145],{"title":140,"path":141,"stem":142},{"title":11,"path":146,"stem":147,"children":148,"page":31},"\u002Fdocs\u002Fevents\u002Fgetting-started","docs\u002Fevents\u002F1.getting-started",[149,153,157],{"title":150,"path":151,"stem":152},"Subscribing","\u002Fdocs\u002Fevents\u002Fgetting-started\u002Fsubscribing","docs\u002Fevents\u002F1.getting-started\u002F1.subscribing",{"title":154,"path":155,"stem":156},"Event Delivery","\u002Fdocs\u002Fevents\u002Fgetting-started\u002Fevent-delivery","docs\u002Fevents\u002F1.getting-started\u002F2.event-delivery",{"title":158,"path":159,"stem":160},"Event Reference","\u002Fdocs\u002Fevents\u002Fgetting-started\u002Fevent-reference","docs\u002Fevents\u002F1.getting-started\u002F3.event-reference",{"title":162,"path":163,"stem":164,"children":165},"Integrations API","\u002Fdocs\u002Fintegrations","docs\u002Fintegrations\u002Findex",[166,167],{"title":162,"path":163,"stem":164},{"title":11,"path":168,"stem":169,"children":170,"page":31},"\u002Fdocs\u002Fintegrations\u002Fgetting-started","docs\u002Fintegrations\u002F1.getting-started",[171,175,179,183,187,191],{"title":172,"path":173,"stem":174},"Why Use It?","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fwhy-integrations-api","docs\u002Fintegrations\u002F1.getting-started\u002F1.why-integrations-api",{"title":176,"path":177,"stem":178},"Use Cases","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fwho-is-it-for","docs\u002Fintegrations\u002F1.getting-started\u002F2.who-is-it-for",{"title":180,"path":181,"stem":182},"Pre-built Connectors","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fpre-built-integrations","docs\u002Fintegrations\u002F1.getting-started\u002F3.pre-built-integrations",{"title":184,"path":185,"stem":186},"Custom Inbound","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fcustom-inbound-api","docs\u002Fintegrations\u002F1.getting-started\u002F4.custom-inbound-api",{"title":188,"path":189,"stem":190},"Event Lifecycle","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fevent-lifecycle","docs\u002Fintegrations\u002F1.getting-started\u002F5.event-lifecycle",{"title":192,"path":193,"stem":194},"API Endpoints","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fmanagement-api-endpoints","docs\u002Fintegrations\u002F1.getting-started\u002F6.management-api-endpoints",{"title":196,"path":197,"stem":198,"children":199},"MCP Server","\u002Fdocs\u002Fmcp","docs\u002Fmcp\u002Findex",[200,201,225,234,244],{"title":196,"path":197,"stem":198},{"title":11,"path":202,"stem":203,"children":204,"page":31},"\u002Fdocs\u002Fmcp\u002Fgetting-started","docs\u002Fmcp\u002F1.getting-started",[205,209,213,217,221],{"title":206,"path":207,"stem":208},"Claude","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fclaude","docs\u002Fmcp\u002F1.getting-started\u002F1.claude",{"title":210,"path":211,"stem":212},"Claude Code","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fclaude-code","docs\u002Fmcp\u002F1.getting-started\u002F2.claude-code",{"title":214,"path":215,"stem":216},"VS Code","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fvscode","docs\u002Fmcp\u002F1.getting-started\u002F3.vscode",{"title":218,"path":219,"stem":220},"Cursor","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fcursor","docs\u002Fmcp\u002F1.getting-started\u002F4.cursor",{"title":222,"path":223,"stem":224},"Verify the connection","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fverify","docs\u002Fmcp\u002F1.getting-started\u002F5.verify",{"title":226,"path":227,"stem":228,"children":229,"page":31},"Docs Server","\u002Fdocs\u002Fmcp\u002Fdocs-server","docs\u002Fmcp\u002F2.docs-server",[230],{"title":231,"path":232,"stem":233},"Docs server tools","\u002Fdocs\u002Fmcp\u002Fdocs-server\u002Ftools","docs\u002Fmcp\u002F2.docs-server\u002F1.tools",{"title":235,"path":236,"stem":237,"children":238},"API Server","\u002Fdocs\u002Fmcp\u002Fapi-server","docs\u002Fmcp\u002F3.api-server\u002Findex",[239,240],{"title":235,"path":236,"stem":237},{"title":241,"path":242,"stem":243},"Available tools","\u002Fdocs\u002Fmcp\u002Fapi-server\u002Ftools","docs\u002Fmcp\u002F3.api-server\u002F1.tools",{"title":245,"path":246,"stem":247,"children":248,"page":31},"Examples","\u002Fdocs\u002Fmcp\u002Fexamples","docs\u002Fmcp\u002F4.examples",[249,253,257,261,265,269],{"title":250,"path":251,"stem":252},"Exploring an API","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fexploring-an-api","docs\u002Fmcp\u002F4.examples\u002F1.exploring-an-api",{"title":254,"path":255,"stem":256},"Building a Feature","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fbuilding-a-feature","docs\u002Fmcp\u002F4.examples\u002F2.building-a-feature",{"title":258,"path":259,"stem":260},"Understanding Models","\u002Fdocs\u002Fmcp\u002Fexamples\u002Funderstanding-models","docs\u002Fmcp\u002F4.examples\u002F3.understanding-models",{"title":262,"path":263,"stem":264},"Code Review","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fcode-review","docs\u002Fmcp\u002F4.examples\u002F4.code-review",{"title":266,"path":267,"stem":268},"Combining MCP Servers","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fmulti-mcp","docs\u002Fmcp\u002F4.examples\u002F5.multi-mcp",{"title":270,"path":271,"stem":272},"Tips","\u002Fdocs\u002Fmcp\u002Fexamples\u002Ftips","docs\u002Fmcp\u002F4.examples\u002F6.tips",{"title":274,"path":275,"stem":276,"children":277,"page":31},"Storefront SDK","\u002Fdocs\u002Fstorefront-sdk","docs\u002Fstorefront-sdk",[278,290,323,338],{"title":11,"path":279,"stem":280,"children":281,"page":31},"\u002Fdocs\u002Fstorefront-sdk\u002Fgetting-started","docs\u002Fstorefront-sdk\u002F1.getting-started",[282,286],{"title":283,"path":284,"stem":285},"Installation","\u002Fdocs\u002Fstorefront-sdk\u002Fgetting-started\u002Finstallation","docs\u002Fstorefront-sdk\u002F1.getting-started\u002F1.installation",{"title":287,"path":288,"stem":289},"Configuration","\u002Fdocs\u002Fstorefront-sdk\u002Fgetting-started\u002Fconfiguration","docs\u002Fstorefront-sdk\u002F1.getting-started\u002F2.configuration",{"title":291,"path":292,"stem":293,"children":294,"page":31},"Resources","\u002Fdocs\u002Fstorefront-sdk\u002Fresources","docs\u002Fstorefront-sdk\u002F2.resources",[295,299,303,307,311,315,319],{"title":296,"path":297,"stem":298},"Products","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fproducts","docs\u002Fstorefront-sdk\u002F2.resources\u002F1.products",{"title":300,"path":301,"stem":302},"Cart","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fcart","docs\u002Fstorefront-sdk\u002F2.resources\u002F2.cart",{"title":304,"path":305,"stem":306},"Auth","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fauth","docs\u002Fstorefront-sdk\u002F2.resources\u002F3.auth",{"title":308,"path":309,"stem":310},"Checkout & Shipping","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fcheckout-shipping","docs\u002Fstorefront-sdk\u002F2.resources\u002F4.checkout-shipping",{"title":312,"path":313,"stem":314},"Orders, Returns & Reviews","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Forders-returns-reviews","docs\u002Fstorefront-sdk\u002F2.resources\u002F5.orders-returns-reviews",{"title":316,"path":317,"stem":318},"Customer assistant","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fassistant","docs\u002Fstorefront-sdk\u002F2.resources\u002F6.assistant",{"title":320,"path":321,"stem":322},"Products in images","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fproducts-in-images","docs\u002Fstorefront-sdk\u002F2.resources\u002F7.products-in-images",{"title":128,"path":324,"stem":325,"children":326,"page":31},"\u002Fdocs\u002Fstorefront-sdk\u002Fnuxt-layer","docs\u002Fstorefront-sdk\u002F3.nuxt-layer",[327,331,335],{"title":328,"path":329,"stem":330},"Overview","\u002Fdocs\u002Fstorefront-sdk\u002Fnuxt-layer\u002Foverview","docs\u002Fstorefront-sdk\u002F3.nuxt-layer\u002F1.overview",{"title":332,"path":333,"stem":334},"Composables","\u002Fdocs\u002Fstorefront-sdk\u002Fnuxt-layer\u002Fcomposables","docs\u002Fstorefront-sdk\u002F3.nuxt-layer\u002F2.composables",{"title":316,"path":336,"stem":337},"\u002Fdocs\u002Fstorefront-sdk\u002Fnuxt-layer\u002Fassistant","docs\u002Fstorefront-sdk\u002F3.nuxt-layer\u002F3.assistant",{"title":67,"path":339,"stem":340,"children":341,"page":31},"\u002Fdocs\u002Fstorefront-sdk\u002Fnextjs","docs\u002Fstorefront-sdk\u002F4.nextjs",[342,345,349,353],{"title":328,"path":343,"stem":344},"\u002Fdocs\u002Fstorefront-sdk\u002Fnextjs\u002Foverview","docs\u002Fstorefront-sdk\u002F4.nextjs\u002F1.overview",{"title":346,"path":347,"stem":348},"Hooks","\u002Fdocs\u002Fstorefront-sdk\u002Fnextjs\u002Fhooks","docs\u002Fstorefront-sdk\u002F4.nextjs\u002F2.hooks",{"title":350,"path":351,"stem":352},"Server helpers and proxy","\u002Fdocs\u002Fstorefront-sdk\u002Fnextjs\u002Fserver","docs\u002Fstorefront-sdk\u002F4.nextjs\u002F3.server",{"title":354,"path":355,"stem":356},"Components","\u002Fdocs\u002Fstorefront-sdk\u002Fnextjs\u002Fcomponents","docs\u002Fstorefront-sdk\u002F4.nextjs\u002F4.components",{"id":358,"title":300,"body":359,"description":1394,"extension":1395,"links":1396,"meta":1397,"navigation":646,"path":301,"seo":1404,"stem":302,"__hash__":1405},"docs\u002Fdocs\u002Fstorefront-sdk\u002F2.resources\u002F2.cart.md",{"type":360,"value":361,"toc":1377},"minimark",[362,371,390,395,402,408,462,469,522,528,531,565,575,585,598,688,694,769,775,816,822,912,918,929,972,978,1052,1061,1064,1144,1150,1153,1206,1210,1373],[363,364,365,366,370],"p",{},"Access via ",[367,368,369],"code",{},"client.cart",".",[363,372,373,374,377,378,381,382,385,386,389],{},"The SDK manages the ",[367,375,376],{},"cartAccessToken"," internally after ",[367,379,380],{},"create()"," or ",[367,383,384],{},"loadShared()",". You don't need to handle it manually — it is stored on the client instance and sent as ",[367,387,388],{},"x-cart-token"," on every subsequent cart request.",[391,392,394],"h2",{"id":393},"methods","Methods",[396,397,399],"h3",{"id":398},"createparams",[367,400,401],{},"create(params?)",[363,403,404,405,407],{},"Create a new empty cart. Stores the returned ",[367,406,376],{}," internally.",[409,410,415],"pre",{"className":411,"code":412,"language":413,"meta":414,"style":414},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","const cart = await client.cart.create()\n\u002F\u002F → StorefrontCart (includes cartAccessToken on first call)\n","ts","",[367,416,417,455],{"__ignoreMap":414},[418,419,422,426,430,434,438,441,443,446,448,452],"span",{"class":420,"line":421},"line",1,[418,423,425],{"class":424},"spNyl","const",[418,427,429],{"class":428},"sTEyZ"," cart ",[418,431,433],{"class":432},"sMK4o","=",[418,435,437],{"class":436},"s7zQu"," await",[418,439,440],{"class":428}," client",[418,442,370],{"class":432},[418,444,445],{"class":428},"cart",[418,447,370],{"class":432},[418,449,451],{"class":450},"s2Zo4","create",[418,453,454],{"class":428},"()\n",[418,456,458],{"class":420,"line":457},2,[418,459,461],{"class":460},"sHwdD","\u002F\u002F → StorefrontCart (includes cartAccessToken on first call)\n",[363,463,464,465,468],{},"For B2B flows, pass a ",[367,466,467],{},"businessUnitId",":",[409,470,472],{"className":411,"code":471,"language":413,"meta":414,"style":414},"const cart = await client.cart.create({ businessUnitId: 'bunit-id' })\n",[367,473,474],{"__ignoreMap":414},[418,475,476,478,480,482,484,486,488,490,492,494,497,500,504,506,509,513,516,519],{"class":420,"line":421},[418,477,425],{"class":424},[418,479,429],{"class":428},[418,481,433],{"class":432},[418,483,437],{"class":436},[418,485,440],{"class":428},[418,487,370],{"class":432},[418,489,445],{"class":428},[418,491,370],{"class":432},[418,493,451],{"class":450},[418,495,496],{"class":428},"(",[418,498,499],{"class":432},"{",[418,501,503],{"class":502},"swJcz"," businessUnitId",[418,505,468],{"class":432},[418,507,508],{"class":432}," '",[418,510,512],{"class":511},"sfazB","bunit-id",[418,514,515],{"class":432},"'",[418,517,518],{"class":432}," }",[418,520,521],{"class":428},")\n",[396,523,525],{"id":524},"getcartid",[367,526,527],{},"get(cartId)",[363,529,530],{},"Load an existing cart. Requires the cart access token to already be set on the client.",[409,532,534],{"className":411,"code":533,"language":413,"meta":414,"style":414},"const cart = await client.cart.get(cart.id)\n",[367,535,536],{"__ignoreMap":414},[418,537,538,540,542,544,546,548,550,552,554,557,560,562],{"class":420,"line":421},[418,539,425],{"class":424},[418,541,429],{"class":428},[418,543,433],{"class":432},[418,545,437],{"class":436},[418,547,440],{"class":428},[418,549,370],{"class":432},[418,551,445],{"class":428},[418,553,370],{"class":432},[418,555,556],{"class":450},"get",[418,558,559],{"class":428},"(cart",[418,561,370],{"class":432},[418,563,564],{"class":428},"id)\n",[396,566,568,571,572],{"id":567},"previewsharedcartid-token-redeemsharedcartid-token",[367,569,570],{},"previewShared(cartId, token)"," \u002F ",[367,573,574],{},"redeemShared(cartId, token)",[363,576,577,578,580,581,584],{},"POS-shared carts use a two-step flow. No ",[367,579,388],{}," is needed for either step — the signed share token (",[367,582,583],{},"?t="," from the share link) is the proof.",[363,586,587,590,591,594,595,370],{},[367,588,589],{},"previewShared"," is read-only and repeatable: it returns a trimmed proposal (line items, totals, salesperson) without customer PII and without consuming the link. ",[367,592,593],{},"redeemShared"," is the takeover: the customer claims the cart, a fresh cart access token is issued and stored on the client, and the link is spent — a second redeem returns ",[367,596,597],{},"409 CART_NOT_SHARED",[409,599,601],{"className":411,"code":600,"language":413,"meta":414,"style":414},"\u002F\u002F On the \u002Fcart\u002F:cartId\u002Fshared?t=\u003Ctoken> page:\nconst proposal = await client.cart.previewShared(cartId, token) \u002F\u002F safe to repeat\n\n\u002F\u002F When the customer clicks \"Go to checkout\":\nconst cart = await client.cart.redeemShared(cartId, token)\n\u002F\u002F Token is now set — redirect to \u002Fcheckout\n",[367,602,603,608,641,648,654,682],{"__ignoreMap":414},[418,604,605],{"class":420,"line":421},[418,606,607],{"class":460},"\u002F\u002F On the \u002Fcart\u002F:cartId\u002Fshared?t=\u003Ctoken> page:\n",[418,609,610,612,615,617,619,621,623,625,627,629,632,635,638],{"class":420,"line":457},[418,611,425],{"class":424},[418,613,614],{"class":428}," proposal ",[418,616,433],{"class":432},[418,618,437],{"class":436},[418,620,440],{"class":428},[418,622,370],{"class":432},[418,624,445],{"class":428},[418,626,370],{"class":432},[418,628,589],{"class":450},[418,630,631],{"class":428},"(cartId",[418,633,634],{"class":432},",",[418,636,637],{"class":428}," token) ",[418,639,640],{"class":460},"\u002F\u002F safe to repeat\n",[418,642,644],{"class":420,"line":643},3,[418,645,647],{"emptyLinePlaceholder":646},true,"\n",[418,649,651],{"class":420,"line":650},4,[418,652,653],{"class":460},"\u002F\u002F When the customer clicks \"Go to checkout\":\n",[418,655,657,659,661,663,665,667,669,671,673,675,677,679],{"class":420,"line":656},5,[418,658,425],{"class":424},[418,660,429],{"class":428},[418,662,433],{"class":432},[418,664,437],{"class":436},[418,666,440],{"class":428},[418,668,370],{"class":432},[418,670,445],{"class":428},[418,672,370],{"class":432},[418,674,593],{"class":450},[418,676,631],{"class":428},[418,678,634],{"class":432},[418,680,681],{"class":428}," token)\n",[418,683,685],{"class":420,"line":684},6,[418,686,687],{"class":460},"\u002F\u002F Token is now set — redirect to \u002Fcheckout\n",[396,689,691],{"id":690},"additemcartid-item",[367,692,693],{},"addItem(cartId, item)",[409,695,697],{"className":411,"code":696,"language":413,"meta":414,"style":414},"const cart = await client.cart.addItem(cart.id, {\n  sku: 'CHAIR-OAK-001',\n  quantity: 2,\n})\n",[367,698,699,732,749,762],{"__ignoreMap":414},[418,700,701,703,705,707,709,711,713,715,717,720,722,724,727,729],{"class":420,"line":421},[418,702,425],{"class":424},[418,704,429],{"class":428},[418,706,433],{"class":432},[418,708,437],{"class":436},[418,710,440],{"class":428},[418,712,370],{"class":432},[418,714,445],{"class":428},[418,716,370],{"class":432},[418,718,719],{"class":450},"addItem",[418,721,559],{"class":428},[418,723,370],{"class":432},[418,725,726],{"class":428},"id",[418,728,634],{"class":432},[418,730,731],{"class":432}," {\n",[418,733,734,737,739,741,744,746],{"class":420,"line":457},[418,735,736],{"class":502},"  sku",[418,738,468],{"class":432},[418,740,508],{"class":432},[418,742,743],{"class":511},"CHAIR-OAK-001",[418,745,515],{"class":432},[418,747,748],{"class":432},",\n",[418,750,751,754,756,760],{"class":420,"line":643},[418,752,753],{"class":502},"  quantity",[418,755,468],{"class":432},[418,757,759],{"class":758},"sbssI"," 2",[418,761,748],{"class":432},[418,763,764,767],{"class":420,"line":650},[418,765,766],{"class":432},"}",[418,768,521],{"class":428},[396,770,772],{"id":771},"removeitemcartid-lineitemid",[367,773,774],{},"removeItem(cartId, lineItemId)",[409,776,778],{"className":411,"code":777,"language":413,"meta":414,"style":414},"const cart = await client.cart.removeItem(cart.id, lineItem.id)\n",[367,779,780],{"__ignoreMap":414},[418,781,782,784,786,788,790,792,794,796,798,801,803,805,807,809,812,814],{"class":420,"line":421},[418,783,425],{"class":424},[418,785,429],{"class":428},[418,787,433],{"class":432},[418,789,437],{"class":436},[418,791,440],{"class":428},[418,793,370],{"class":432},[418,795,445],{"class":428},[418,797,370],{"class":432},[418,799,800],{"class":450},"removeItem",[418,802,559],{"class":428},[418,804,370],{"class":432},[418,806,726],{"class":428},[418,808,634],{"class":432},[418,810,811],{"class":428}," lineItem",[418,813,370],{"class":432},[418,815,564],{"class":428},[396,817,819],{"id":818},"setcustomercartid-customer",[367,820,821],{},"setCustomer(cartId, customer)",[409,823,825],{"className":411,"code":824,"language":413,"meta":414,"style":414},"const cart = await client.cart.setCustomer(cart.id, {\n  email: 'customer@example.com',\n  name: 'Anna Svensson',\n  phone: '+46701234567',\n})\n",[367,826,827,858,874,890,906],{"__ignoreMap":414},[418,828,829,831,833,835,837,839,841,843,845,848,850,852,854,856],{"class":420,"line":421},[418,830,425],{"class":424},[418,832,429],{"class":428},[418,834,433],{"class":432},[418,836,437],{"class":436},[418,838,440],{"class":428},[418,840,370],{"class":432},[418,842,445],{"class":428},[418,844,370],{"class":432},[418,846,847],{"class":450},"setCustomer",[418,849,559],{"class":428},[418,851,370],{"class":432},[418,853,726],{"class":428},[418,855,634],{"class":432},[418,857,731],{"class":432},[418,859,860,863,865,867,870,872],{"class":420,"line":457},[418,861,862],{"class":502},"  email",[418,864,468],{"class":432},[418,866,508],{"class":432},[418,868,869],{"class":511},"customer@example.com",[418,871,515],{"class":432},[418,873,748],{"class":432},[418,875,876,879,881,883,886,888],{"class":420,"line":643},[418,877,878],{"class":502},"  name",[418,880,468],{"class":432},[418,882,508],{"class":432},[418,884,885],{"class":511},"Anna Svensson",[418,887,515],{"class":432},[418,889,748],{"class":432},[418,891,892,895,897,899,902,904],{"class":420,"line":650},[418,893,894],{"class":502},"  phone",[418,896,468],{"class":432},[418,898,508],{"class":432},[418,900,901],{"class":511},"+46701234567",[418,903,515],{"class":432},[418,905,748],{"class":432},[418,907,908,910],{"class":420,"line":656},[418,909,766],{"class":432},[418,911,521],{"class":428},[396,913,915],{"id":914},"setcustomertypecartid-type",[367,916,917],{},"setCustomerType(cartId, type)",[363,919,920,921,924,925,928],{},"Switch between ",[367,922,923],{},"'private'"," and ",[367,926,927],{},"'business'"," (B2B).",[409,930,932],{"className":411,"code":931,"language":413,"meta":414,"style":414},"const cart = await client.cart.setCustomerType(cart.id, 'business')\n",[367,933,934],{"__ignoreMap":414},[418,935,936,938,940,942,944,946,948,950,952,955,957,959,961,963,965,968,970],{"class":420,"line":421},[418,937,425],{"class":424},[418,939,429],{"class":428},[418,941,433],{"class":432},[418,943,437],{"class":436},[418,945,440],{"class":428},[418,947,370],{"class":432},[418,949,445],{"class":428},[418,951,370],{"class":432},[418,953,954],{"class":450},"setCustomerType",[418,956,559],{"class":428},[418,958,370],{"class":432},[418,960,726],{"class":428},[418,962,634],{"class":432},[418,964,508],{"class":432},[418,966,967],{"class":511},"business",[418,969,515],{"class":432},[418,971,521],{"class":428},[396,973,975],{"id":974},"setshippingcartid-shipping",[367,976,977],{},"setShipping(cartId, shipping)",[409,979,981],{"className":411,"code":980,"language":413,"meta":414,"style":414},"const cart = await client.cart.setShipping(cart.id, {\n  optionId: 'shipping-option-id',\n  address: { ... },\n})\n",[367,982,983,1014,1030,1046],{"__ignoreMap":414},[418,984,985,987,989,991,993,995,997,999,1001,1004,1006,1008,1010,1012],{"class":420,"line":421},[418,986,425],{"class":424},[418,988,429],{"class":428},[418,990,433],{"class":432},[418,992,437],{"class":436},[418,994,440],{"class":428},[418,996,370],{"class":432},[418,998,445],{"class":428},[418,1000,370],{"class":432},[418,1002,1003],{"class":450},"setShipping",[418,1005,559],{"class":428},[418,1007,370],{"class":432},[418,1009,726],{"class":428},[418,1011,634],{"class":432},[418,1013,731],{"class":432},[418,1015,1016,1019,1021,1023,1026,1028],{"class":420,"line":457},[418,1017,1018],{"class":502},"  optionId",[418,1020,468],{"class":432},[418,1022,508],{"class":432},[418,1024,1025],{"class":511},"shipping-option-id",[418,1027,515],{"class":432},[418,1029,748],{"class":432},[418,1031,1032,1035,1037,1040,1043],{"class":420,"line":643},[418,1033,1034],{"class":502},"  address",[418,1036,468],{"class":432},[418,1038,1039],{"class":432}," {",[418,1041,1042],{"class":432}," ...",[418,1044,1045],{"class":432}," },\n",[418,1047,1048,1050],{"class":420,"line":650},[418,1049,766],{"class":432},[418,1051,521],{"class":428},[396,1053,1055,571,1058],{"id":1054},"applycodecartid-code-removecodecartid-code",[367,1056,1057],{},"applyCode(cartId, code)",[367,1059,1060],{},"removeCode(cartId, code)",[363,1062,1063],{},"Unified code field — handles discount codes, gift cards, and store credits automatically.",[409,1065,1067],{"className":411,"code":1066,"language":413,"meta":414,"style":414},"const cart = await client.cart.applyCode(cart.id, 'SUMMER20')\nconst cart = await client.cart.removeCode(cart.id, 'SUMMER20')\n",[367,1068,1069,1107],{"__ignoreMap":414},[418,1070,1071,1073,1075,1077,1079,1081,1083,1085,1087,1090,1092,1094,1096,1098,1100,1103,1105],{"class":420,"line":421},[418,1072,425],{"class":424},[418,1074,429],{"class":428},[418,1076,433],{"class":432},[418,1078,437],{"class":436},[418,1080,440],{"class":428},[418,1082,370],{"class":432},[418,1084,445],{"class":428},[418,1086,370],{"class":432},[418,1088,1089],{"class":450},"applyCode",[418,1091,559],{"class":428},[418,1093,370],{"class":432},[418,1095,726],{"class":428},[418,1097,634],{"class":432},[418,1099,508],{"class":432},[418,1101,1102],{"class":511},"SUMMER20",[418,1104,515],{"class":432},[418,1106,521],{"class":428},[418,1108,1109,1111,1113,1115,1117,1119,1121,1123,1125,1128,1130,1132,1134,1136,1138,1140,1142],{"class":420,"line":457},[418,1110,425],{"class":424},[418,1112,429],{"class":428},[418,1114,433],{"class":432},[418,1116,437],{"class":436},[418,1118,440],{"class":428},[418,1120,370],{"class":432},[418,1122,445],{"class":428},[418,1124,370],{"class":432},[418,1126,1127],{"class":450},"removeCode",[418,1129,559],{"class":428},[418,1131,370],{"class":432},[418,1133,726],{"class":428},[418,1135,634],{"class":432},[418,1137,508],{"class":432},[418,1139,1102],{"class":511},[418,1141,515],{"class":432},[418,1143,521],{"class":428},[396,1145,1147],{"id":1146},"completecartid-params",[367,1148,1149],{},"complete(cartId, params)",[363,1151,1152],{},"Complete a cart using a custom payment method (store credit only, etc.).",[409,1154,1156],{"className":411,"code":1155,"language":413,"meta":414,"style":414},"const order = await client.cart.complete(cart.id, { paymentMethod: 'store-credit' })\n",[367,1157,1158],{"__ignoreMap":414},[418,1159,1160,1162,1165,1167,1169,1171,1173,1175,1177,1180,1182,1184,1186,1188,1190,1193,1195,1197,1200,1202,1204],{"class":420,"line":421},[418,1161,425],{"class":424},[418,1163,1164],{"class":428}," order ",[418,1166,433],{"class":432},[418,1168,437],{"class":436},[418,1170,440],{"class":428},[418,1172,370],{"class":432},[418,1174,445],{"class":428},[418,1176,370],{"class":432},[418,1178,1179],{"class":450},"complete",[418,1181,559],{"class":428},[418,1183,370],{"class":432},[418,1185,726],{"class":428},[418,1187,634],{"class":432},[418,1189,1039],{"class":432},[418,1191,1192],{"class":502}," paymentMethod",[418,1194,468],{"class":432},[418,1196,508],{"class":432},[418,1198,1199],{"class":511},"store-credit",[418,1201,515],{"class":432},[418,1203,518],{"class":432},[418,1205,521],{"class":428},[391,1207,1209],{"id":1208},"key-types","Key types",[409,1211,1213],{"className":411,"code":1212,"language":413,"meta":414,"style":414},"interface StorefrontCart {\n  id: string\n  status: 'open' | 'shared' | 'awaiting-customer' | 'completed' | 'archived'\n  lineItems: CartLineItem[]\n  totalAmountIncVat: number\n  remainingAmount: number\n  currencyCode: string\n  customer?: CartCustomer\n  shippingDetails?: CartShippingDetails\n  cartAccessToken?: string \u002F\u002F only present on create() \u002F redeemShared()\n}\n",[367,1214,1215,1226,1236,1288,1301,1311,1320,1330,1342,1353,1367],{"__ignoreMap":414},[418,1216,1217,1220,1224],{"class":420,"line":421},[418,1218,1219],{"class":424},"interface",[418,1221,1223],{"class":1222},"sBMFI"," StorefrontCart",[418,1225,731],{"class":432},[418,1227,1228,1231,1233],{"class":420,"line":457},[418,1229,1230],{"class":502},"  id",[418,1232,468],{"class":432},[418,1234,1235],{"class":1222}," string\n",[418,1237,1238,1241,1243,1245,1248,1250,1253,1255,1258,1260,1262,1264,1267,1269,1271,1273,1276,1278,1280,1282,1285],{"class":420,"line":643},[418,1239,1240],{"class":502},"  status",[418,1242,468],{"class":432},[418,1244,508],{"class":432},[418,1246,1247],{"class":511},"open",[418,1249,515],{"class":432},[418,1251,1252],{"class":432}," |",[418,1254,508],{"class":432},[418,1256,1257],{"class":511},"shared",[418,1259,515],{"class":432},[418,1261,1252],{"class":432},[418,1263,508],{"class":432},[418,1265,1266],{"class":511},"awaiting-customer",[418,1268,515],{"class":432},[418,1270,1252],{"class":432},[418,1272,508],{"class":432},[418,1274,1275],{"class":511},"completed",[418,1277,515],{"class":432},[418,1279,1252],{"class":432},[418,1281,508],{"class":432},[418,1283,1284],{"class":511},"archived",[418,1286,1287],{"class":432},"'\n",[418,1289,1290,1293,1295,1298],{"class":420,"line":650},[418,1291,1292],{"class":502},"  lineItems",[418,1294,468],{"class":432},[418,1296,1297],{"class":1222}," CartLineItem",[418,1299,1300],{"class":428},"[]\n",[418,1302,1303,1306,1308],{"class":420,"line":656},[418,1304,1305],{"class":502},"  totalAmountIncVat",[418,1307,468],{"class":432},[418,1309,1310],{"class":1222}," number\n",[418,1312,1313,1316,1318],{"class":420,"line":684},[418,1314,1315],{"class":502},"  remainingAmount",[418,1317,468],{"class":432},[418,1319,1310],{"class":1222},[418,1321,1323,1326,1328],{"class":420,"line":1322},7,[418,1324,1325],{"class":502},"  currencyCode",[418,1327,468],{"class":432},[418,1329,1235],{"class":1222},[418,1331,1333,1336,1339],{"class":420,"line":1332},8,[418,1334,1335],{"class":502},"  customer",[418,1337,1338],{"class":432},"?:",[418,1340,1341],{"class":1222}," CartCustomer\n",[418,1343,1345,1348,1350],{"class":420,"line":1344},9,[418,1346,1347],{"class":502},"  shippingDetails",[418,1349,1338],{"class":432},[418,1351,1352],{"class":1222}," CartShippingDetails\n",[418,1354,1356,1359,1361,1364],{"class":420,"line":1355},10,[418,1357,1358],{"class":502},"  cartAccessToken",[418,1360,1338],{"class":432},[418,1362,1363],{"class":1222}," string",[418,1365,1366],{"class":460}," \u002F\u002F only present on create() \u002F redeemShared()\n",[418,1368,1370],{"class":420,"line":1369},11,[418,1371,1372],{"class":432},"}\n",[1374,1375,1376],"style",{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}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);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}",{"title":414,"searchDepth":457,"depth":457,"links":1378},[1379,1393],{"id":393,"depth":457,"text":394,"children":1380},[1381,1382,1383,1385,1386,1387,1388,1389,1390,1392],{"id":398,"depth":643,"text":401},{"id":524,"depth":643,"text":527},{"id":567,"depth":643,"text":1384},"previewShared(cartId, token) \u002F redeemShared(cartId, token)",{"id":690,"depth":643,"text":693},{"id":771,"depth":643,"text":774},{"id":818,"depth":643,"text":821},{"id":914,"depth":643,"text":917},{"id":974,"depth":643,"text":977},{"id":1054,"depth":643,"text":1391},"applyCode(cartId, code) \u002F removeCode(cartId, code)",{"id":1146,"depth":643,"text":1149},{"id":1208,"depth":457,"text":1209},"Shopping cart lifecycle — create, mutate, and hand off to checkout","md",null,{"questions":1398},{"en":1399},[1400,1401,1402,1403],"How do I add a product to the cart?","How do I apply a discount code or gift card to the cart?","How does the POS shared cart handoff work?","How do I create a cart for a B2B business unit?",{"title":300,"description":1394},"n4O0n445Rx5idoabqdpqQ01GE3pKHbuDWnE7sI--Qfs",[1407,1409],{"title":296,"path":297,"stem":298,"description":1408,"children":-1},"Product search, detail lookups, and related products",{"title":304,"path":305,"stem":306,"description":1410,"children":-1},"Customer login, registration, magic links, and session management",1793388940564]