[{"data":1,"prerenderedAt":717},["ShallowReactive",2],{"navigation_docs":3,"-bundles-design-prices-sticky-bar-and-savings":256,"-bundles-design-prices-sticky-bar-and-savings-surround":712},[4,102],{"title":5,"path":6,"stem":7,"children":8},"TreStack Timer","\u002Ftimer","1.timer",[9,12,30,51,68,89],{"title":10,"path":6,"stem":11},"TreStack Timer docs","1.timer\u002Findex",{"title":13,"path":14,"stem":15,"children":16,"page":29},"Getting started","\u002Ftimer\u002Fstart","1.timer\u002F1.start",[17,21,25],{"title":18,"path":19,"stem":20},"Installing TreStack Timer","\u002Ftimer\u002Fstart\u002Finstalling-a-trestack-app","1.timer\u002F1.start\u002F1.installing-a-trestack-app",{"title":22,"path":23,"stem":24},"Turning on the app embed and placing the app block","\u002Ftimer\u002Fstart\u002Fplacing-your-first-app-block","1.timer\u002F1.start\u002F2.placing-your-first-app-block",{"title":26,"path":27,"stem":28},"Development stores and theme previews","\u002Ftimer\u002Fstart\u002Fdevelopment-stores-and-theme-previews","1.timer\u002F1.start\u002F3.development-stores-and-theme-previews",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Timer types","\u002Ftimer\u002Ftimer-types","1.timer\u002F2.timer-types",[35,39,43,47],{"title":36,"path":37,"stem":38},"TreStack Timer, setup and settings","\u002Ftimer\u002Ftimer-types\u002Ftrestack-timer","1.timer\u002F2.timer-types\u002F1.trestack-timer",{"title":40,"path":41,"stem":42},"Placement, countries, and translations","\u002Ftimer\u002Ftimer-types\u002Fplacement-and-targeting","1.timer\u002F2.timer-types\u002F2.placement-and-targeting",{"title":44,"path":45,"stem":46},"Cart page and cart drawer timers","\u002Ftimer\u002Ftimer-types\u002Fcart-timers","1.timer\u002F2.timer-types\u002F3.cart-timers",{"title":48,"path":49,"stem":50},"Email timers","\u002Ftimer\u002Ftimer-types\u002Femail-timers","1.timer\u002F2.timer-types\u002F4.email-timers",{"title":52,"path":53,"stem":54,"children":55,"page":29},"Performance and themes","\u002Ftimer\u002Freference","1.timer\u002F3.reference",[56,60,64],{"title":57,"path":58,"stem":59},"Performance notes","\u002Ftimer\u002Freference\u002Fperformance-notes","1.timer\u002F3.reference\u002F1.performance-notes",{"title":61,"path":62,"stem":63},"Theme compatibility","\u002Ftimer\u002Freference\u002Ftheme-compatibility","1.timer\u002F3.reference\u002F2.theme-compatibility",{"title":65,"path":66,"stem":67},"Running several timers at once","\u002Ftimer\u002Freference\u002Frunning-several-timers","1.timer\u002F3.reference\u002F3.running-several-timers",{"title":69,"path":70,"stem":71,"children":72,"page":29},"Billing, privacy, and data","\u002Ftimer\u002Faccount","1.timer\u002F4.account",[73,77,81,85],{"title":74,"path":75,"stem":76},"Billing, trials, and plan changes","\u002Ftimer\u002Faccount\u002Fbilling","1.timer\u002F4.account\u002F1.billing",{"title":78,"path":79,"stem":80},"Privacy and data, what the app stores","\u002Ftimer\u002Faccount\u002Fprivacy-and-data","1.timer\u002F4.account\u002F2.privacy-and-data",{"title":82,"path":83,"stem":84},"Data processing and subprocessors","\u002Ftimer\u002Faccount\u002Fdata-processing-and-subprocessors","1.timer\u002F4.account\u002F3.data-processing-and-subprocessors",{"title":86,"path":87,"stem":88},"Uninstalling TreStack Timer","\u002Ftimer\u002Faccount\u002Funinstalling-trestack-timer","1.timer\u002F4.account\u002F4.uninstalling-trestack-timer",{"title":90,"path":91,"stem":92,"children":93,"page":29},"When something is wrong","\u002Ftimer\u002Ftroubleshooting","1.timer\u002F5.troubleshooting",[94,98],{"title":95,"path":96,"stem":97},"When the timer does not appear","\u002Ftimer\u002Ftroubleshooting\u002Ftroubleshooting-app-blocks","1.timer\u002F5.troubleshooting\u002F1.troubleshooting-app-blocks",{"title":99,"path":100,"stem":101},"When the timer shows in the wrong place or looks wrong","\u002Ftimer\u002Ftroubleshooting\u002Ftroubleshooting-storefront-display","1.timer\u002F5.troubleshooting\u002F2.troubleshooting-storefront-display",{"title":103,"path":104,"stem":105,"children":106},"TreStack Bundles","\u002Fbundles","2.bundles",[107,110,131,160,185,198,219,244],{"title":108,"path":104,"stem":109},"TreStack Bundles docs","2.bundles\u002Findex",{"title":111,"path":112,"stem":113,"children":114,"page":29},"Getting a deal live","\u002Fbundles\u002Fstart","2.bundles\u002F1.start",[115,119,123,127],{"title":116,"path":117,"stem":118},"Getting started with TreStack Bundles","\u002Fbundles\u002Fstart\u002Fgetting-started","2.bundles\u002F1.start\u002F1.getting-started",{"title":120,"path":121,"stem":122},"Deal types and deal bars","\u002Fbundles\u002Fstart\u002Fdeal-types","2.bundles\u002F1.start\u002F2.deal-types",{"title":124,"path":125,"stem":126},"Creating, publishing and managing deals","\u002Fbundles\u002Fstart\u002Fcreating-and-publishing-deals","2.bundles\u002F1.start\u002F3.creating-and-publishing-deals",{"title":128,"path":129,"stem":130},"Development stores and testing safely","\u002Fbundles\u002Fstart\u002Fdevelopment-stores-and-testing","2.bundles\u002F1.start\u002F4.development-stores-and-testing",{"title":132,"path":133,"stem":134,"children":135,"page":29},"Building offers","\u002Fbundles\u002Fdeals","2.bundles\u002F2.deals",[136,140,144,148,152,156],{"title":137,"path":138,"stem":139},"Quantity breaks and Buy X, get Y","\u002Fbundles\u002Fdeals\u002Fquantity-breaks-and-buy-x-get-y","2.bundles\u002F2.deals\u002F1.quantity-breaks-and-buy-x-get-y",{"title":141,"path":142,"stem":143},"Bundles and mix and match","\u002Fbundles\u002Fdeals\u002Fbundles-and-mix-and-match","2.bundles\u002F2.deals\u002F2.bundles-and-mix-and-match",{"title":145,"path":146,"stem":147},"Free gifts and progressive gifts","\u002Fbundles\u002Fdeals\u002Fgifts-and-progressive-gifts","2.bundles\u002F2.deals\u002F3.gifts-and-progressive-gifts",{"title":149,"path":150,"stem":151},"Upsells, add-ons and personalisation","\u002Fbundles\u002Fdeals\u002Fupsells-add-ons-and-personalisation","2.bundles\u002F2.deals\u002F4.upsells-add-ons-and-personalisation",{"title":153,"path":154,"stem":155},"Subscriptions in a deal","\u002Fbundles\u002Fdeals\u002Fsubscriptions","2.bundles\u002F2.deals\u002F5.subscriptions",{"title":157,"path":158,"stem":159},"Products, dates and visibility","\u002Fbundles\u002Fdeals\u002Fproducts-dates-and-visibility","2.bundles\u002F2.deals\u002F6.products-dates-and-visibility",{"title":161,"path":162,"stem":163,"children":164,"page":29},"How a deal looks, and where","\u002Fbundles\u002Fdesign","2.bundles\u002F3.design",[165,169,173,177,181],{"title":166,"path":167,"stem":168},"Designing a deal","\u002Fbundles\u002Fdesign\u002Fdesign","2.bundles\u002F3.design\u002F1.design",{"title":170,"path":171,"stem":172},"Badges, timers and scratch-off","\u002Fbundles\u002Fdesign\u002Fbadges-timers-and-scratch-off","2.bundles\u002F3.design\u002F2.badges-timers-and-scratch-off",{"title":174,"path":175,"stem":176},"Variants, swatches and images","\u002Fbundles\u002Fdesign\u002Fvariants-swatches-and-images","2.bundles\u002F3.design\u002F3.variants-swatches-and-images",{"title":178,"path":179,"stem":180},"Prices, the sticky bar and the savings summary","\u002Fbundles\u002Fdesign\u002Fprices-sticky-bar-and-savings","2.bundles\u002F3.design\u002F4.prices-sticky-bar-and-savings",{"title":182,"path":183,"stem":184},"Translations, currencies and markets","\u002Fbundles\u002Fdesign\u002Ftranslations-and-markets","2.bundles\u002F3.design\u002F5.translations-and-markets",{"title":186,"path":187,"stem":188,"children":189,"page":29},"Prices at checkout","\u002Fbundles\u002Fcheckout","2.bundles\u002F4.checkout",[190,194],{"title":191,"path":192,"stem":193},"How the discount is applied at checkout","\u002Fbundles\u002Fcheckout\u002Fhow-the-discount-is-applied","2.bundles\u002F4.checkout\u002F1.how-the-discount-is-applied",{"title":195,"path":196,"stem":197},"Combining discounts, and store limits","\u002Fbundles\u002Fcheckout\u002Fcombinations-and-limits","2.bundles\u002F4.checkout\u002F2.combinations-and-limits",{"title":199,"path":200,"stem":201,"children":202,"page":29},"Tests and numbers","\u002Fbundles\u002Fmeasure","2.bundles\u002F5.measure",[203,207,211,215],{"title":204,"path":205,"stem":206},"Deal analytics","\u002Fbundles\u002Fmeasure\u002Fanalytics","2.bundles\u002F5.measure\u002F1.analytics",{"title":208,"path":209,"stem":210},"Added revenue","\u002Fbundles\u002Fmeasure\u002Fadded-revenue","2.bundles\u002F5.measure\u002F2.added-revenue",{"title":212,"path":213,"stem":214},"A\u002FB testing a deal","\u002Fbundles\u002Fmeasure\u002Fab-tests","2.bundles\u002F5.measure\u002F3.ab-tests",{"title":216,"path":217,"stem":218},"Smart A\u002FB tests","\u002Fbundles\u002Fmeasure\u002Fsmart-ab-tests","2.bundles\u002F5.measure\u002F4.smart-ab-tests",{"title":220,"path":221,"stem":222,"children":223,"page":29},"Billing, privacy, and when something is wrong","\u002Fbundles\u002Faccount","2.bundles\u002F6.account",[224,228,232,236,240],{"title":225,"path":226,"stem":227},"TreStack Bundles plans and billing","\u002Fbundles\u002Faccount\u002Fplans-and-billing","2.bundles\u002F6.account\u002F1.plans-and-billing",{"title":229,"path":230,"stem":231},"Going over your plan","\u002Fbundles\u002Faccount\u002Fgoing-over-your-plan","2.bundles\u002F6.account\u002F2.going-over-your-plan",{"title":233,"path":234,"stem":235},"Pausing, cancelling and uninstalling","\u002Fbundles\u002Faccount\u002Fpausing-cancelling-and-uninstalling","2.bundles\u002F6.account\u002F3.pausing-cancelling-and-uninstalling",{"title":237,"path":238,"stem":239},"Privacy, data and sub-processors","\u002Fbundles\u002Faccount\u002Fprivacy-and-data","2.bundles\u002F6.account\u002F4.privacy-and-data",{"title":241,"path":242,"stem":243},"When a deal does not show or prices look wrong","\u002Fbundles\u002Faccount\u002Ftroubleshooting","2.bundles\u002F6.account\u002F5.troubleshooting",{"title":245,"path":246,"stem":247,"children":248,"page":29},"Reference","\u002Fbundles\u002Freference","2.bundles\u002F7.reference",[249,252],{"title":57,"path":250,"stem":251},"\u002Fbundles\u002Freference\u002Fperformance-notes","2.bundles\u002F7.reference\u002F1.performance-notes",{"title":253,"path":254,"stem":255},"Theme compatibility and placement","\u002Fbundles\u002Freference\u002Ftheme-compatibility","2.bundles\u002F7.reference\u002F2.theme-compatibility",{"id":257,"title":178,"body":258,"description":705,"extension":706,"links":707,"meta":708,"navigation":709,"path":179,"seo":710,"stem":180,"__hash__":711},"docs\u002F2.bundles\u002F3.design\u002F4.prices-sticky-bar-and-savings.md",{"type":259,"value":260,"toc":688},"minimark",[261,276,306,311,314,362,390,394,401,468,471,474,478,493,496,503,507,516,542,564,572,576,614,618,661,665,668],[262,263,264,268,269,272,275],"p",{},[265,266,267],"strong",{},"Applies to:"," TreStack Bundles, every plan",[270,271],"br",{},[265,273,274],{},"Updated:"," 11 October 2026",[277,278,279,284],"callout",{},[262,280,281],{},[265,282,283],{},"At a glance",[285,286,287,294,300],"ul",{},[288,289,290,293],"li",{},[265,291,292],{},"Rounding:"," Six endings, charged at checkout as shown",[288,295,296,299],{},[265,297,298],{},"Sticky bar:"," Brings the shopper back to the widget, adds nothing itself",[288,301,302,305],{},[265,303,304],{},"Sold out:"," Display only, the discount still follows the cart",[307,308,310],"h2",{"id":309},"how-prices-show","How prices show",[262,312,313],{},"Each bar shows its price after the discount and, struck through, the price before it. The price settings are in the deal's Settings, Pricing.",[285,315,316,330,336,342,356],{},[288,317,318,321,322,325,326,329],{},[265,319,320],{},"Show prices per item:"," writes the price of one item instead of the bar's total, with an optional ",[265,323,324],{},"Unit label"," after it, such as \"per piece\". ",[265,327,328],{},"Show both prices"," then adds the bar's total under it, on bars of more than one item.",[288,331,332,335],{},[265,333,334],{},"Use product compare-at price:"," the struck-through price becomes the product's compare-at price where that is higher than its price, and the savings the widget shows count from it. A quantity break bar at Full price shows a product's compare-at price even with this off. Compare-at prices are for display only: the discount always comes off the product's real price.",[288,337,338,341],{},[265,339,340],{},"Show prices without decimals:"," writes prices as whole amounts, rounded to the nearest one. Checkout still charges the exact price, so $19.50 shows as $20 and is charged $19.50. To make them match, combine it with Price rounding set to .00.",[288,343,344,347,348,351,352,355],{},[265,345,346],{},"Update theme product price:"," writes the deal's price into your theme's own price on the page, as the ",[265,349,350],{},"Theme price"," you choose: Price per item or Bundle price (the bar's total). The theme's compare-at price follows too. This works on the themes the widget knows, listed on ",[353,354,253],"a",{"href":254},".",[288,357,358,361],{},[265,359,360],{},"Show total price in the add to cart button:"," adds the chosen offer's total to the end of your theme's Add to cart button.",[262,363,364,365,369,370,369,373,369,376,369,379,369,382,385,386,389],{},"Text variables put live numbers in your titles and labels: ",[366,367,368],"code",{},"{{saved_percentage}}",", ",[366,371,372],{},"{{saved_total}}",[366,374,375],{},"{{saved_amount}}",[366,377,378],{},"{{new_total}}",[366,380,381],{},"{{new_price}}",[366,383,384],{},"{{original_total}}"," and ",[366,387,388],{},"{{original_price}}"," among them. They are filled with the bar's prices in the shopper's currency.",[307,391,393],{"id":392},"price-rounding","Price rounding",[262,395,396,397,400],{},"Price rounding makes discounted prices end the way you choose. Turn it on, then pick the ",[265,398,399],{},"Rounding",":",[402,403,404,416],"table",{},[405,406,407],"thead",{},[408,409,410,413],"tr",{},[411,412,399],"th",{},[411,414,415],{},"$25.53 becomes",[417,418,419,428,436,444,452,460],"tbody",{},[408,420,421,425],{},[422,423,424],"td",{},".99",[422,426,427],{},"$25.99",[408,429,430,433],{},[422,431,432],{},".95",[422,434,435],{},"$25.95",[408,437,438,441],{},[422,439,440],{},".90",[422,442,443],{},"$25.90",[408,445,446,449],{},[422,447,448],{},".x9",[422,450,451],{},"$25.59",[408,453,454,457],{},[422,455,456],{},".x0",[422,458,459],{},"$25.60",[408,461,462,465],{},[422,463,464],{},".00",[422,466,467],{},"$26.00",[262,469,470],{},"The rounding goes to the next price with that ending, so it usually adds a little. A price that already sits on a whole amount moves just under it with .99, .95 and .90, so $26.00 becomes $25.99. If rounding up would take the price above the full price, it rounds from one whole unit lower instead: $25.50 with a full price of $25.80 becomes $24.99, not $25.99. With Show prices per item on, each item's price is rounded; otherwise the bar's total is.",[262,472,473],{},"Rounding happens in the shopper's currency, and checkout charges the rounded price: the discount at checkout follows the same rule. Currencies without decimals, such as the yen, round only with .x9 and .x0, and currencies with three decimals are not rounded.",[307,475,477],{"id":476},"sticky-add-to-cart-bar","Sticky add to cart bar",[262,479,480,481,484,485,488,489,492],{},"The Sticky add to cart section adds a bar fixed to the bottom of the screen. It appears once the shopper has scrolled past the widget and hides again when they scroll back. It shows the product's photo, a ",[265,482,483],{},"Title"," (",[366,486,487],{},"{{product}}",", the product name, by default) and a ",[265,490,491],{},"Button"," (\"Choose bundle\" by default).",[262,494,495],{},"Pressing it scrolls back to the widget and puts the keyboard on the chosen bar. It adds nothing to the cart by itself: the shopper still picks and adds in the widget. The scroll is instant instead of smooth for shoppers whose device asks for reduced motion. The title's variables follow the bar and variant the shopper has chosen.",[262,497,498,499,502],{},"Its Style has Background, Title, Button and Button text colors, a style for the title and the button, and six sizes: Title font size, Button font size, Product photo size, Button padding, Product photo corner radius and Button corner radius. Untick ",[265,500,501],{},"Same size on desktop and mobile"," to set the mobile sizes apart. On a deal that uses brand colors, the bar starts in them. A page shows one sticky bar, from the first widget that has one. The bar sits outside the widget, so custom CSS does not reach it; use its Style fields.",[307,504,506],{"id":505},"savings-summary-low-stock-and-sold-out","Savings summary, low stock and sold out",[262,508,509,512,513,515],{},[265,510,511],{},"Savings summary."," A line at the end of the widget saying what the chosen bar saves, \"You're saving ",[366,514,372],{}," on this order\" by default. It changes with every choice the shopper makes.",[285,517,518,524,530,536],{},[288,519,520,523],{},[265,521,522],{},"Icon type:"," None, Checkmark, Dot, Arrow (the default), Star, Heart, Thumbs up, or Custom with your own icon.",[288,525,526,529],{},[265,527,528],{},"Include free gift value in savings:"," adds the full price of the bar's free gifts to the saving. Off by default.",[288,531,532,535],{},[265,533,534],{},"Hide when there are no savings:"," on by default, so a bar that saves nothing shows no line.",[288,537,538,541],{},[265,539,540],{},"Style:"," Background, Title, Border, Value and Icon colors, Alignment, a font style, Size (8 to 72 px), Border width (0 to 20 px) and Corner radius (0 to 50 px).",[262,543,544,547,548,551,552,555,556,559,560,563],{},[265,545,546],{},"Low stock alert."," In Settings, Low stock alert. A line in the chosen bar when the variant's stock is above zero and below ",[265,549,550],{},"Show when stock is less than"," (5 when you turn it on). ",[265,553,554],{},"Message text"," is \"Only ",[366,557,558],{},"{{stock}}"," left\" by default, in red, with a ",[265,561,562],{},"Color"," field. It works only for products whose inventory Shopify tracks.",[262,565,566,569,570,355],{},[265,567,568],{},"Show as Sold out."," A switch in each bar. The bar fades (Opacity 0 to 1, 0.3 by default), carries a label (\"Sold out\" by default, with Background, Text and Size) and cannot be selected. It is display only: the discount still follows what is in the cart, so a shopper who puts that quantity in the cart another way still gets that bar's price, as described on ",[353,571,191],{"href":192},[307,573,575],{"id":574},"tuning-the-price-display-in-four-steps","Tuning the price display, in four steps.",[577,578,580,585,588,592,595,599,607,611],"steps",{"level":579},"3",[581,582,584],"h3",{"id":583},"choose-total-or-per-item","Choose total or per item",[262,586,587],{},"Settings, Pricing. Per item suits large quantities; add a Unit label if your products sell by a measure.",[581,589,591],{"id":590},"decide-on-compare-at-and-rounding","Decide on compare-at and rounding",[262,593,594],{},"Use compare-at prices only if they are real. Pick a rounding, then check a few bars in the preview.",[581,596,598],{"id":597},"show-the-saving","Show the saving",[262,600,601,602,604,605,355],{},"Turn on Savings summary, and set its words with ",[366,603,372],{}," or ",[366,606,368],{},[581,608,610],{"id":609},"add-the-sticky-bar-and-check-on-a-phone","Add the sticky bar and check on a phone",[262,612,613],{},"Turn on Sticky add to cart. After you publish, scroll past the widget on a phone and press the bar.",[307,615,617],{"id":616},"settings-reference","Settings reference",[619,620,621,626,630,634,637,641,645,649,653,657],"field-group",{},[622,623,625],"field",{"name":624},"Show prices per item","One item's price instead of the total. Unit label and Show both prices go with it.",[622,627,629],{"name":628},"Use product compare-at price","Struck-through price from the compare-at price. Display only.",[622,631,633],{"name":632},"Show prices without decimals","Whole amounts on display. Checkout charges the exact price.",[622,635,636],{"name":393},".99, .95, .90, .x9, .x0 or .00, in the shopper's currency. Charged at checkout as shown.",[622,638,640],{"name":639},"Update theme product price","Price per item or Bundle price, in the theme's own price. Known themes only.",[622,642,644],{"name":643},"Show total price in the add to cart button","The chosen offer's total on the theme's button.",[622,646,648],{"name":647},"Sticky add to cart","Appears after the widget scrolls out of view. Scrolls back to it; adds nothing.",[622,650,652],{"name":651},"Savings summary","A line with the chosen bar's saving. Hidden at no saving by default.",[622,654,656],{"name":655},"Low stock alert","In the chosen bar, below a stock threshold. Shopify-tracked inventory only.",[622,658,660],{"name":659},"Show as Sold out","Per bar. Faded and unselectable; the discount still follows the cart.",[307,662,664],{"id":663},"if-this-does-not-work","If this does not work",[262,666,667],{},"The failures most likely on this procedure, with the check that resolves each one.",[669,670,671,676,680,684],"accordion",{},[672,673,675],"accordion-item",{"label":674},"The price is not the one I set","Price rounding is on and moved it to the ending you chose; checkout charges that rounded price. If only the shown price looks off, Show prices without decimals rounds what is written, while checkout charges the exact amount.",[672,677,679],{"label":678},"The theme's price does not change","Update theme product price works on the themes the widget knows. On another theme the widget cannot find the theme's price. Turn the setting off so the page does not show two different prices, or ask support about custom selectors for your theme.",[672,681,683],{"label":682},"The sticky bar never appears","It shows only after the widget has scrolled out of view above the screen, and only on a page where the deal shows. Check that the section is on and the deal is saved or published, then scroll down past the widget.",[672,685,687],{"label":686},"The savings summary is missing on one bar","Hide when there are no savings is on, and that bar saves nothing, usually a Full price bar. Turn the setting off to show the line on every bar.",{"title":689,"searchDepth":690,"depth":690,"links":691},"",2,[692,693,694,695,696,703,704],{"id":309,"depth":690,"text":310},{"id":392,"depth":690,"text":393},{"id":476,"depth":690,"text":477},{"id":505,"depth":690,"text":506},{"id":574,"depth":690,"text":575,"children":697},[698,700,701,702],{"id":583,"depth":699,"text":584},3,{"id":590,"depth":699,"text":591},{"id":597,"depth":699,"text":598},{"id":609,"depth":699,"text":610},{"id":616,"depth":690,"text":617},{"id":663,"depth":690,"text":664},"How the widget writes prices, compare-at prices, price rounding and the theme's own price, plus the sticky add to cart bar, the savings summary, low stock alerts and sold-out bars.","md",null,{},true,{"title":178,"description":705},"9c7HFQFCWZdk9Zop_lqet73i4QqQmpynvFwUoB0SYIU",[713,715],{"title":174,"path":175,"stem":176,"description":714,"children":-1},"How shoppers pick sizes and colors in a deal, the eight swatch types, default variants, bar images, and featured images that move the product gallery.",{"title":182,"path":183,"stem":184,"description":716,"children":-1},"The widget's built-in texts in 20 languages, translating your deal texts and checkout labels, how prices follow the shopper's currency, and deals limited to some markets.",1791656488565]