[{"data":1,"prerenderedAt":678},["ShallowReactive",2],{"header:help":3,"footer:default":67,"story:navigation\u002Fsearch:help":250,"story:help\u002Fcategories":288,"story:help\u002Farticles\u002Fadd-or-remove-a-coupon-based-on-items-in-the-cart":314,"no-guide:add-or-remove-a-coupon-based-on-items-in-the-cart":59,"article:\u002Fhelp\u002Farticles\u002Fadd-or-remove-a-coupon-based-on-items-in-the-cart":423,"story:contact":435,"help:tree:93e734a7-6c54-4394-9d99-cf8fa30a0185":624,"_apollo:default":677},{"name":4,"created_at":5,"published_at":6,"updated_at":7,"id":8,"uuid":9,"content":10,"slug":57,"full_slug":58,"sort_by_date":59,"position":60,"tag_list":61,"is_startpage":24,"parent_id":62,"meta_data":59,"group_id":63,"first_published_at":64,"release_id":59,"lang":65,"path":59,"alternates":66,"default_full_slug":59,"translated_slugs":59},"Help Center Header","2024-08-09T18:06:34.939Z","2024-10-21T21:58:39.217Z","2024-10-21T21:58:39.232Z",10082752,"3e9b88f7-c163-4657-a2f2-62532d600fad",{"_uid":11,"link":12,"badge":16,"items":17,"title":13,"buttons":50,"new_tab":24,"submenu":51,"alignment":13,"component":52,"badge_link":53,"top_menu_items":56},"e5645a1a-f991-40e8-8d67-e40ebc082b5a",{"id":13,"url":13,"linktype":14,"fieldtype":15,"cached_url":13},"","story","multilink","Help Center",[18,27,34,39,44],{"_uid":19,"link":20,"title":23,"new_tab":24,"submenu":25,"component":26},"5cbe2861-1f49-4166-97da-a4dddd8105e3",{"id":21,"url":13,"linktype":14,"fieldtype":15,"cached_url":22},"4c0a2d99-ec30-4579-8ef1-6bf5564d4839","help\u002Fcategories\u002F","Articles",false,[],"header___item",{"_uid":28,"link":29,"title":32,"new_tab":33,"component":26},"1c8edeb5-b9e9-4cb8-b1c6-c1f292f7d7cd",{"id":13,"url":30,"linktype":31,"fieldtype":15,"cached_url":30},"https:\u002F\u002Fwiki.foxycart.com\u002F","url","Documentation",true,{"_uid":35,"link":36,"title":38,"new_tab":33,"component":26},"8d7df70e-f087-4da0-b616-6f0e9a5af35c",{"id":13,"url":37,"linktype":31,"fieldtype":15,"cached_url":37},"https:\u002F\u002Fapi.foxycart.com\u002F","API Documentation",{"_uid":40,"link":41,"title":43,"new_tab":33,"component":26},"f76e7944-23d5-4652-87e4-cdae79272762",{"id":13,"url":42,"linktype":31,"fieldtype":15,"cached_url":42},"https:\u002F\u002Fstatus.foxy.io\u002F","System Status",{"_uid":45,"link":46,"title":49,"new_tab":24,"component":26},"0de16771-4c84-466c-a1da-d8568113c71f",{"id":47,"url":13,"linktype":14,"fieldtype":15,"cached_url":48},"01e4e370-f9b9-45af-8fa9-f15540699b0d","contact","Contact Us",[],[],"header",{"id":54,"url":13,"linktype":14,"fieldtype":15,"cached_url":55},"4a679eb7-662d-4ea4-a976-5a2acbf0b663","help\u002F",[],"help-header","navigation\u002Fhelp-header",null,20,[],10082747,"71b81c2e-5e09-48a1-a397-a3c72fcd344a","2022-09-21T14:50:25.655Z","default",[],{"name":68,"created_at":69,"published_at":70,"updated_at":71,"id":72,"uuid":73,"content":74,"slug":243,"full_slug":244,"sort_by_date":59,"position":245,"tag_list":246,"is_startpage":24,"parent_id":62,"meta_data":59,"group_id":247,"first_published_at":248,"release_id":59,"lang":65,"path":59,"alternates":249,"default_full_slug":59,"translated_slugs":59},"Default Footer","2024-08-09T18:06:59.024Z","2025-09-04T06:24:46.223Z","2025-09-04T06:24:46.241Z",10082753,"e59e67ac-248a-482f-84a1-53d4f318186a",{"_uid":75,"about":76,"logos":77,"socials":82,"sections":108,"component":225,"cta_title":226,"bottom_links":227,"cta_subtitle":241,"cta_button_link":242,"cta_button_text":183},"830983f5-c4c4-43c8-b150-86a5e3fa6dc8","Foxy’s hosted cart & payment page allow you to sell anything, using your existing website or platform.",[78],{"id":79,"alt":13,"name":13,"focus":13,"title":13,"filename":80,"copyright":13,"fieldtype":81},14760,"https:\u002F\u002Fa-us.storyblok.com\u002Ff\u002F1001040\u002Fx\u002F3b030847ec\u002Fb-corp.svg","asset",[83,90,96,102],{"_uid":84,"icon":85,"link":86,"name":88,"component":89},"faf0a618-ea94-42ea-9182-03be18c43216","fa-facebook",{"id":13,"url":87,"linktype":31,"fieldtype":15,"cached_url":87},"https:\u002F\u002Fwww.facebook.com\u002Ffoxycart","Facebook","footer___social",{"_uid":91,"icon":92,"link":93,"name":95,"component":89},"14309c18-7e79-423e-b375-34555bac0811","fa-instagram",{"id":13,"url":94,"linktype":31,"fieldtype":15,"cached_url":94},"https:\u002F\u002Fwww.instagram.com\u002Ffoxy_io","Instagram",{"_uid":97,"icon":98,"link":99,"name":101,"component":89},"8f7fe7cf-0dd3-4596-8334-226ea466716a","fa-linkedin",{"id":13,"url":100,"linktype":31,"fieldtype":15,"cached_url":100},"https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Ffoxycart.com","LinkedIn",{"_uid":103,"icon":104,"link":105,"name":107,"component":89},"90a675b4-dd97-40b5-be09-00a87223d4c5","fa-youtube",{"id":13,"url":106,"linktype":31,"fieldtype":15,"cached_url":106},"https:\u002F\u002Fwww.youtube.com\u002Fuser\u002Ffoxycart","Youtube",[109,139,184,206],{"_uid":110,"name":111,"items":112,"component":138},"82849945-282f-488c-b18d-a8d2252f514a","Company",[113,120,126,132],{"_uid":114,"link":115,"title":118,"new_tab":24,"component":119},"1f699ab1-938b-4d9d-9825-aabcbe6f57fe",{"id":116,"url":13,"linktype":14,"fieldtype":15,"cached_url":117},"63634293-a749-4226-9439-9f38ee6dcda0","about-us","About Us","footer___menu_items",{"_uid":121,"link":122,"title":125,"new_tab":24,"component":119},"b26b00f1-a0e7-4be2-8ab3-428b8cc841f8",{"id":123,"url":13,"linktype":14,"fieldtype":15,"cached_url":124},"26cb7c55-faed-4a77-a291-1552d4111b3e","how-foxy-works","How Foxy Works",{"_uid":127,"link":128,"title":131,"new_tab":24,"component":119},"b40c68a0-1ceb-4226-9515-6176534f61fe",{"id":129,"url":13,"linktype":14,"fieldtype":15,"cached_url":130},"dc6657d7-7f4f-4c0d-b781-e971b038ee26","for-good","Foxy For Good",{"_uid":133,"link":134,"title":137,"new_tab":24,"component":119},"3ad0c134-bef9-4fff-b891-e09f16109036",{"id":135,"url":13,"linktype":14,"fieldtype":15,"cached_url":136},"23cae210-baf4-4588-9862-d09f4f52ccd2","brand-assets","Brand Assets","footer___section",{"_uid":140,"name":141,"items":142,"component":138},"a6805fa8-ac60-47f1-b8f0-f27aded0afbe","Product",[143,149,155,161,167,173,179],{"_uid":144,"link":145,"title":148,"new_tab":24,"component":119},"b39c8a4e-2383-486f-b76a-11fbb15d8134",{"id":146,"url":13,"linktype":14,"fieldtype":15,"cached_url":147},"bb04690f-fe98-4ce6-80be-05b950f2364f","features\u002F","Features",{"_uid":150,"link":151,"title":154,"new_tab":24,"component":119},"64f8a41f-c181-433d-bc0a-fc94e71ecbf6",{"id":152,"url":13,"linktype":14,"fieldtype":15,"cached_url":153},"c450c58d-761d-48c0-a9af-0b064611689b","pricing","Pricing",{"_uid":156,"link":157,"title":160,"new_tab":24,"component":119},"6e0b287f-fd8c-4146-9e0e-0ab0b5c9ce3c",{"id":158,"url":13,"linktype":14,"fieldtype":15,"cached_url":159},"fab20ad9-e76a-4947-b709-3a6fdfa88028","blog\u002Fcategories\u002Fproduct-updates","Product Updates",{"_uid":162,"link":163,"title":166,"new_tab":24,"component":119},"47e5a074-a6b5-4f1c-8c2f-89a2ae9f83eb",{"id":164,"url":13,"linktype":14,"fieldtype":15,"cached_url":165},"d2c83612-d611-47f3-a3b4-ca7fe08540b8","changelogs\u002F","Changelogs",{"_uid":168,"link":169,"title":172,"new_tab":24,"component":119},"b5c08774-542f-4ffd-b357-c94d674488b9",{"id":170,"url":13,"linktype":14,"fieldtype":15,"cached_url":171},"08876121-0df3-4ed9-aa11-902b3e41cd02","whats-next","What's Next",{"_uid":174,"link":175,"title":178,"new_tab":24,"component":119},"9c2704ed-6d9f-43e1-9e67-c8d91c083288",{"id":176,"url":13,"linktype":14,"fieldtype":15,"cached_url":177},"056a7857-b18f-4025-8f97-91a38fc19bc8","compare\u002F","Compare",{"_uid":180,"link":181,"title":183,"new_tab":24,"component":119},"5f2db35b-674b-406a-8fa7-d246633af9fe",{"id":13,"url":182,"linktype":31,"fieldtype":15,"cached_url":182},"https:\u002F\u002Fadmin.foxy.io\u002Fsign-up","Try Foxy Free",{"_uid":185,"name":186,"items":187,"component":138},"63fa1f29-4252-4640-9922-fe310e69e54a","Security",[188,194,200],{"_uid":189,"link":190,"title":193,"new_tab":24,"component":119},"1158ddb6-9eb0-466f-8eb6-7ca2ae66c8b8",{"id":191,"url":13,"linktype":14,"fieldtype":15,"cached_url":192},"1f58fb2c-8681-4742-b6e8-09999beae9f6","security-contact","Security Contact",{"_uid":195,"link":196,"title":199,"new_tab":24,"component":119},"9a79c54a-6022-4dfd-854b-766f5e4703ba",{"id":197,"url":13,"linktype":14,"fieldtype":15,"cached_url":198},"55cbfcc3-425a-4261-8037-54e919851d2d","pci","PCI Compliance",{"_uid":201,"link":202,"title":205,"new_tab":24,"component":119},"0b85f5b6-9534-4071-b323-b39d053dd4d7",{"id":203,"url":13,"linktype":14,"fieldtype":15,"cached_url":204},"c3ac0fe3-83e2-4879-afbd-d4c83e1590df","help\u002Farticles\u002Four-official-domains-public-code","Domains & Codebases",{"_uid":207,"name":208,"items":209,"component":138},"998ded67-d107-49f4-8154-ca6be51671ec","Support",[210,213,216,219,222],{"_uid":211,"link":212,"title":16,"new_tab":24,"component":119},"594ffd35-3049-4004-bb08-0db568ebd819",{"id":54,"url":13,"linktype":14,"fieldtype":15,"cached_url":55},{"_uid":214,"link":215,"title":32,"new_tab":33,"component":119},"0a1a55ab-a985-4f9d-8b42-26da714d0c1c",{"id":13,"url":30,"linktype":31,"fieldtype":15,"cached_url":30},{"_uid":217,"link":218,"title":38,"new_tab":33,"component":119},"61e0b7c8-aadf-419b-a339-b3ccabc65bf4",{"id":13,"url":37,"linktype":31,"fieldtype":15,"cached_url":37},{"_uid":220,"link":221,"title":43,"new_tab":33,"component":119},"fd67a89e-1c54-4d31-94b5-64be999062d6",{"id":13,"url":42,"linktype":31,"fieldtype":15,"cached_url":42},{"_uid":223,"link":224,"title":49,"new_tab":24,"component":119},"231a6f71-e996-4ad4-b033-d4d5542f34f0",{"id":47,"url":13,"linktype":14,"fieldtype":15,"cached_url":48},"footer","Get started with our *unlimited free trial*.",[228,235],{"_uid":229,"link":230,"text":233,"component":234},"f0b77210-2632-45a2-8436-e57cad84d01a",{"id":231,"url":13,"linktype":14,"fieldtype":15,"cached_url":232},"60ba16a2-c1f4-485f-b978-8d2eeeafbf5a","terms-of-service","Terms of Service","footer___bottom_links",{"_uid":236,"link":237,"text":240,"component":234},"4bd497b0-993f-4b4d-a5b7-8a49c7c8fec9",{"id":238,"url":13,"linktype":14,"fieldtype":15,"cached_url":239},"332302b9-1d18-4016-b9c8-9b33c72d782b","privacy-policy","Privacy Policy","No credit card required.",{"id":13,"url":182,"linktype":31,"fieldtype":15,"cached_url":182},"default-footer","navigation\u002Fdefault-footer",50,[],"11006268-07f9-41e9-96f3-c51fb723399d","2022-09-21T20:39:02.357Z",[],{"name":251,"created_at":252,"published_at":253,"updated_at":254,"id":255,"uuid":256,"content":257,"slug":279,"full_slug":282,"sort_by_date":59,"position":283,"tag_list":284,"is_startpage":24,"parent_id":62,"meta_data":59,"group_id":285,"first_published_at":286,"release_id":59,"lang":65,"path":59,"alternates":287,"default_full_slug":59,"translated_slugs":59},"Search","2024-10-21T22:08:54.973Z","2025-05-26T09:17:25.790Z","2025-05-26T09:17:25.804Z",13592003,"14cbc359-9ac1-4a7a-a8de-ad4ac8ef26d4",{"_uid":258,"name":251,"indices":259,"summary":13,"component":279,"primary_image":280},"5e4a56e8-76f1-4790-b3a7-70f1be97d042",[260,265,269,274],{"key":261,"_uid":262,"icon":13,"name":263,"component":264},"all","c12a3210-7323-4273-8217-5215e52efe84","All","index",{"key":266,"_uid":267,"icon":268,"name":23,"component":264},"help_center_article","5acff080-95e4-44d3-8dcf-1b19720af382","fa-file-alt",{"key":270,"_uid":271,"icon":272,"name":273,"component":264},"help_center_guide","b8fbc206-c083-471e-a1f0-0ebeb90a669d","fa-book","Guides",{"key":275,"_uid":276,"icon":277,"name":278,"component":264},"blog_post","23419e83-2e56-4c4c-8a05-9fd1b3c9a9bd","fa-file-image","Blog Posts","search",{"id":59,"alt":59,"name":13,"focus":59,"title":59,"source":59,"filename":13,"copyright":59,"fieldtype":81,"meta_data":281},{},"navigation\u002Fsearch",60,[],"11e1fd31-95cd-4fc9-b736-8b8910663e6c","2024-10-21T23:17:05.904Z",[],{"name":23,"created_at":289,"published_at":290,"updated_at":291,"id":292,"uuid":21,"content":293,"slug":307,"full_slug":22,"sort_by_date":59,"position":308,"tag_list":309,"is_startpage":33,"parent_id":310,"meta_data":59,"group_id":311,"first_published_at":312,"release_id":59,"lang":65,"path":59,"alternates":313,"default_full_slug":59,"translated_slugs":59},"2022-09-19T14:42:29.685Z","2024-07-30T18:17:22.506Z","2024-07-30T18:17:22.525Z",2660,{"_uid":294,"icon":13,"name":23,"guides":295,"pinned":24,"summary":296,"category":13,"component":297,"blog_posts":298,"content_hub":24,"icon_custom":299,"case_studies":300,"faq_sections":301,"help_articles":302,"featured_guides":303,"mailbox_category":13,"featured_articles":304,"featured_blog_posts":305,"featured_case_studies":306},"d6dae89a-907a-4bf7-82de-fe2ba875ee6e",[],"Get your questions answered with our browsable knowledge base.","help_center_category",[],{"id":59,"alt":59,"name":13,"focus":59,"title":59,"filename":13,"copyright":59,"fieldtype":81},[],[],[],[],[],[],[],"categories",530,[],2658,"19ebcdd2-027f-47f5-9a5b-a8992c959578","2022-09-19T16:24:39.219Z",[],{"name":315,"created_at":316,"published_at":317,"updated_at":318,"id":319,"uuid":320,"content":321,"slug":416,"full_slug":417,"sort_by_date":59,"position":418,"tag_list":419,"is_startpage":24,"parent_id":420,"meta_data":59,"group_id":421,"first_published_at":317,"release_id":59,"lang":65,"path":59,"alternates":422,"default_full_slug":59,"translated_slugs":59},"Add or remove a coupon based on items in the cart","2026-07-21T14:41:28.250Z","2026-07-22T17:45:03.605Z","2026-07-22T17:45:03.627Z",200520860740532,"93e734a7-6c54-4394-9d99-cf8fa30a0185",{"_uid":322,"body":323,"name":315,"image":411,"pinned":24,"summary":413,"category":414,"component":266,"related_articles":415},"46b2cb7d-cbce-43ef-ac9b-c9c2fa0a5eb2",{"type":324,"content":325},"doc",[326,333,338,343,350,383,389,394],{"type":327,"attrs":328,"content":329},"paragraph",{"textAlign":59},[330],{"text":331,"type":332},"If you have a promotion that you're offering, such as \"purchase x product and receive x off of x product\", you'll want to make sure that the user can't override the purchase requirement by adding the required product, receiving the discount on the second product, then removing the original required product.","text",{"type":327,"attrs":334,"content":335},{"textAlign":59},[336],{"text":337,"type":332},"This snippet looks for the presence of a specific coupon (based on the code), and the total quantity of any products with a specific code. Then if the coupon is there but the products are not, it removes the coupon. If it has the products, but not the coupon, it adds it. This logic is run on page load of the checkout, along with whenever a product is removed, quantity updated or coupon added on the checkout. This should then ensure that the coupon is only present when the required conditions are met.",{"type":327,"attrs":339,"content":340},{"textAlign":59},[341],{"text":342,"type":332},"The script is based on the quantity of a specific product code - but it can be adjusted as needed, whether you need it for a specific category of products, or a specific total order amount of specific products rather than quantity.",{"type":344,"attrs":345,"content":347},"heading",{"level":346,"textAlign":59},2,[348],{"text":349,"type":332},"Step 1: Apply the snippet to your configuration",{"type":327,"attrs":351,"content":352},{"textAlign":59},[353,355,361,363,368,370,374,376,381],{"text":354,"type":332},"In the Foxy admin (",{"text":356,"type":332,"marks":357},"https:\u002F\u002Fadmin.foxy.io",[358],{"type":359,"attrs":360},"link",{"href":356,"uuid":59,"anchor":59,"target":59,"linktype":31},{"text":362,"type":332},"), go to ",{"text":364,"type":332,"marks":365},"Settings > Templates",[366],{"type":367},"bold",{"text":369,"type":332}," and add the code to the ",{"text":371,"type":332,"marks":372},"Custom footer",[373],{"type":367},{"text":375,"type":332}," field (Twig is supported; it is injected before the closing ",{"text":377,"type":332,"marks":378},"\u003C\u002Fbody>",[379],{"type":380},"code",{"text":382,"type":332}," tag).",{"type":384,"attrs":385,"content":386},"code_block",{"class":59},[387],{"text":388,"type":332},"{% if context == \"checkout\" %}\n\u003Cscript>\nFC.client.on(\"ready.done\", checkPromoProducts);\nFC.client.on(\"cart-item-remove.done\", checkPromoProducts);\nFC.client.on(\"cart-item-quantity-update.done\", checkPromoProducts);\nFC.client.on(\"cart-coupon-add.done\", checkPromoProducts);\n \nfunction checkPromoProducts() {\n    var coupon_code = \"COUPON_CODE\",\n        product_a_qty = 0,\n        coupon_id = 0;\n \n    if (FC.json.coupons.hasOwnProperty(coupon_code)) {\n        coupon_id = FC.json.coupons[coupon_code].id;\n    } \n\n    for (var i = 0; i \u003C FC.json.items.length; i++) {\n        if (FC.json.items[i].code == \"PRODUCT_CODE\") {\n            product_a_qty += FC.json.items[i].quantity;\n        }\n    }\n\n    if (coupon_id > 0 && product_a_qty == 0) {\n        \u002F\u002F The coupon shouldn't apply anymore\n        FC.client.request(\"https:\u002F\u002F\" + FC.settings.storedomain + \"\u002Fcart?cart=remove_coupon&coupon_code_id=\" + coupon_id).done(function(dataJSON) {\n            FC.cart.render();\n        });\n    } else if (coupon_id == 0 && product_a_qty > 0) {\n        \u002F\u002F They should have the coupon, let's add it\n        FC.client.request(\"https:\u002F\u002F\" + FC.settings.storedomain + \"\u002Fcart?coupon=\" + coupon_code).done(function(dataJSON) {\n            FC.cart.render();\n        });\n    }\n}\n\u003C\u002Fscript>\n{% endif %}",{"type":344,"attrs":390,"content":391},{"level":346,"textAlign":59},[392],{"text":393,"type":332},"Step 2: Customize conditions",{"type":327,"attrs":395,"content":396},{"textAlign":59},[397,399,403,405,409],{"text":398,"type":332},"You'll also need to update the coupon code string in the script (it's near the top as ",{"text":400,"type":332,"marks":401},"\"COUPON_CODE\"",[402],{"type":380},{"text":404,"type":332},") and the product code string too (shown as ",{"text":406,"type":332,"marks":407},"\"PRODUCT_CODE\"",[408],{"type":380},{"text":410,"type":332},") to the coupon code you created.",{"id":59,"alt":59,"name":13,"focus":59,"title":59,"source":59,"filename":13,"copyright":59,"fieldtype":81,"meta_data":412},{},"How to automatically add or remove a coupon when a required product is added to or removed from the cart.","b78008c1-4459-4a26-ad17-2304c133ab12",[],"add-or-remove-a-coupon-based-on-items-in-the-cart","help\u002Farticles\u002Fadd-or-remove-a-coupon-based-on-items-in-the-cart",-4070,[],2659,"268bc5c6-1cbf-45be-9c98-5df9f51f4549",[],{"html":424,"sections":425,"segments":431},"\u003Cp>If you have a promotion that you&#039;re offering, such as &quot;purchase x product and receive x off of x product&quot;, you&#039;ll want to make sure that the user can&#039;t override the purchase requirement by adding the required product, receiving the discount on the second product, then removing the original required product.\u003C\u002Fp>\u003Cp>This snippet looks for the presence of a specific coupon (based on the code), and the total quantity of any products with a specific code. Then if the coupon is there but the products are not, it removes the coupon. If it has the products, but not the coupon, it adds it. This logic is run on page load of the checkout, along with whenever a product is removed, quantity updated or coupon added on the checkout. This should then ensure that the coupon is only present when the required conditions are met.\u003C\u002Fp>\u003Cp>The script is based on the quantity of a specific product code - but it can be adjusted as needed, whether you need it for a specific category of products, or a specific total order amount of specific products rather than quantity.\u003C\u002Fp>\u003Csection id=\"step-1-apply-the-snippet-to-your-configuration\" data-title=\"Step 1: Apply the snippet to your configuration\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"step-1-apply-the-snippet-to-your-configuration\">Step 1: Apply the snippet to your configuration\u003C\u002Fh2>\u003Cp>In the Foxy admin (\u003Ca href=\"https:\u002F\u002Fadmin.foxy.io\" class=\"\">https:\u002F\u002Fadmin.foxy.io\u003C\u002Fa>), go to \u003Cstrong>Settings &gt; Templates\u003C\u002Fstrong> and add the code to the \u003Cstrong>Custom footer\u003C\u002Fstrong> field (Twig is supported; it is injected before the closing \u003Ccode class=\"badge bg-soft-danger text-danger\">&lt;\u002Fbody&gt;\u003C\u002Fcode> tag).\u003C\u002Fp>\u003Cdiv class=\"position-relative w-100 overflow-hidden rounded-2\" data-code-block>\u003Cdiv class=\"d-flex justify-content-end border-bottom\" style=\"background:#2b2c3b;\">\u003Cbutton type=\"button\" class=\"btn btn-link btn-sm text-light\" title=\"Copy\" data-code-button>\u003Cspan data-code-default style=\"\">\u003Ci class=\"fal fa-copy me-2\">\u003C\u002Fi> Copy \u003C\u002Fspan>\u003Cspan class=\"text-success\" data-code-success style=\"display:none;\">\u003Ci class=\"fal fa-check ms-2\">\u003C\u002Fi> Copied \u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cdiv class=\"small\">\u003Cpre class=\"hljs p-2\" data-code-content>{% if context == &quot;checkout&quot; %}\n\u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">script\u003C\u002Fspan>&gt;\u003C\u002Fspan>\u003Cspan class=\"language-javascript\">\n\u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">client\u003C\u002Fspan>.\u003Cspan class=\"hljs-title function_\">on\u003C\u002Fspan>(\u003Cspan class=\"hljs-string\">&quot;ready.done&quot;\u003C\u002Fspan>, checkPromoProducts);\n\u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">client\u003C\u002Fspan>.\u003Cspan class=\"hljs-title function_\">on\u003C\u002Fspan>(\u003Cspan class=\"hljs-string\">&quot;cart-item-remove.done&quot;\u003C\u002Fspan>, checkPromoProducts);\n\u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">client\u003C\u002Fspan>.\u003Cspan class=\"hljs-title function_\">on\u003C\u002Fspan>(\u003Cspan class=\"hljs-string\">&quot;cart-item-quantity-update.done&quot;\u003C\u002Fspan>, checkPromoProducts);\n\u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">client\u003C\u002Fspan>.\u003Cspan class=\"hljs-title function_\">on\u003C\u002Fspan>(\u003Cspan class=\"hljs-string\">&quot;cart-coupon-add.done&quot;\u003C\u002Fspan>, checkPromoProducts);\n \n\u003Cspan class=\"hljs-keyword\">function\u003C\u002Fspan> \u003Cspan class=\"hljs-title function_\">checkPromoProducts\u003C\u002Fspan>(\u003Cspan class=\"hljs-params\">\u003C\u002Fspan>) {\n    \u003Cspan class=\"hljs-keyword\">var\u003C\u002Fspan> coupon_code = \u003Cspan class=\"hljs-string\">&quot;COUPON_CODE&quot;\u003C\u002Fspan>,\n        product_a_qty = \u003Cspan class=\"hljs-number\">0\u003C\u002Fspan>,\n        coupon_id = \u003Cspan class=\"hljs-number\">0\u003C\u002Fspan>;\n \n    \u003Cspan class=\"hljs-keyword\">if\u003C\u002Fspan> (\u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">json\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">coupons\u003C\u002Fspan>.\u003Cspan class=\"hljs-title function_\">hasOwnProperty\u003C\u002Fspan>(coupon_code)) {\n        coupon_id = \u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">json\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">coupons\u003C\u002Fspan>[coupon_code].\u003Cspan class=\"hljs-property\">id\u003C\u002Fspan>;\n    } \n\n    \u003Cspan class=\"hljs-keyword\">for\u003C\u002Fspan> (\u003Cspan class=\"hljs-keyword\">var\u003C\u002Fspan> i = \u003Cspan class=\"hljs-number\">0\u003C\u002Fspan>; i &lt; \u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">json\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">items\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">length\u003C\u002Fspan>; i++) {\n        \u003Cspan class=\"hljs-keyword\">if\u003C\u002Fspan> (\u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">json\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">items\u003C\u002Fspan>[i].\u003Cspan class=\"hljs-property\">code\u003C\u002Fspan> == \u003Cspan class=\"hljs-string\">&quot;PRODUCT_CODE&quot;\u003C\u002Fspan>) {\n            product_a_qty += \u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">json\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">items\u003C\u002Fspan>[i].\u003Cspan class=\"hljs-property\">quantity\u003C\u002Fspan>;\n        }\n    }\n\n    \u003Cspan class=\"hljs-keyword\">if\u003C\u002Fspan> (coupon_id &gt; \u003Cspan class=\"hljs-number\">0\u003C\u002Fspan> &amp;&amp; product_a_qty == \u003Cspan class=\"hljs-number\">0\u003C\u002Fspan>) {\n        \u003Cspan class=\"hljs-comment\">\u002F\u002F The coupon shouldn&#x27;t apply anymore\u003C\u002Fspan>\n        \u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">client\u003C\u002Fspan>.\u003Cspan class=\"hljs-title function_\">request\u003C\u002Fspan>(\u003Cspan class=\"hljs-string\">&quot;https:\u002F\u002F&quot;\u003C\u002Fspan> + \u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">settings\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">storedomain\u003C\u002Fspan> + \u003Cspan class=\"hljs-string\">&quot;\u002Fcart?cart=remove_coupon&amp;coupon_code_id=&quot;\u003C\u002Fspan> + coupon_id).\u003Cspan class=\"hljs-title function_\">done\u003C\u002Fspan>(\u003Cspan class=\"hljs-keyword\">function\u003C\u002Fspan>(\u003Cspan class=\"hljs-params\">dataJSON\u003C\u002Fspan>) {\n            \u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">cart\u003C\u002Fspan>.\u003Cspan class=\"hljs-title function_\">render\u003C\u002Fspan>();\n        });\n    } \u003Cspan class=\"hljs-keyword\">else\u003C\u002Fspan> \u003Cspan class=\"hljs-keyword\">if\u003C\u002Fspan> (coupon_id == \u003Cspan class=\"hljs-number\">0\u003C\u002Fspan> &amp;&amp; product_a_qty &gt; \u003Cspan class=\"hljs-number\">0\u003C\u002Fspan>) {\n        \u003Cspan class=\"hljs-comment\">\u002F\u002F They should have the coupon, let&#x27;s add it\u003C\u002Fspan>\n        \u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">client\u003C\u002Fspan>.\u003Cspan class=\"hljs-title function_\">request\u003C\u002Fspan>(\u003Cspan class=\"hljs-string\">&quot;https:\u002F\u002F&quot;\u003C\u002Fspan> + \u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">settings\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">storedomain\u003C\u002Fspan> + \u003Cspan class=\"hljs-string\">&quot;\u002Fcart?coupon=&quot;\u003C\u002Fspan> + coupon_code).\u003Cspan class=\"hljs-title function_\">done\u003C\u002Fspan>(\u003Cspan class=\"hljs-keyword\">function\u003C\u002Fspan>(\u003Cspan class=\"hljs-params\">dataJSON\u003C\u002Fspan>) {\n            \u003Cspan class=\"hljs-variable constant_\">FC\u003C\u002Fspan>.\u003Cspan class=\"hljs-property\">cart\u003C\u002Fspan>.\u003Cspan class=\"hljs-title function_\">render\u003C\u002Fspan>();\n        });\n    }\n}\n\u003C\u002Fspan>\u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">script\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n{% endif %}\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection id=\"step-2-customize-conditions\" data-title=\"Step 2: Customize conditions\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"step-2-customize-conditions\">Step 2: Customize conditions\u003C\u002Fh2>\u003Cp>You&#039;ll also need to update the coupon code string in the script (it&#039;s near the top as \u003Ccode class=\"badge bg-soft-danger text-danger\">&quot;COUPON_CODE&quot;\u003C\u002Fcode>) and the product code string too (shown as \u003Ccode class=\"badge bg-soft-danger text-danger\">&quot;PRODUCT_CODE&quot;\u003C\u002Fcode>) to the coupon code you created.\u003C\u002Fp>\u003C\u002Fsection>",[426,429],{"id":427,"title":349,"level":428},"step-1-apply-the-snippet-to-your-configuration","H2",{"id":430,"title":393,"level":428},"step-2-customize-conditions",[432],{"type":433,"content":434},"html","\u003Cp>If you have a promotion that you&#039;re offering, such as &quot;purchase x product and receive x off of x product&quot;, you&#039;ll want to make sure that the user can&#039;t override the purchase requirement by adding the required product, receiving the discount on the second product, then removing the original required product.\u003C\u002Fp>\u003Cp>This snippet looks for the presence of a specific coupon (based on the code), and the total quantity of any products with a specific code. Then if the coupon is there but the products are not, it removes the coupon. If it has the products, but not the coupon, it adds it. This logic is run on page load of the checkout, along with whenever a product is removed, quantity updated or coupon added on the checkout. This should then ensure that the coupon is only present when the required conditions are met.\u003C\u002Fp>\u003Cp>The script is based on the quantity of a specific product code - but it can be adjusted as needed, whether you need it for a specific category of products, or a specific total order amount of specific products rather than quantity.\u003C\u002Fp>\u003Ch2>Step 1: Apply the snippet to your configuration\u003C\u002Fh2>\u003Cp>In the Foxy admin (\u003Ca href=\"https:\u002F\u002Fadmin.foxy.io\" class=\"\">https:\u002F\u002Fadmin.foxy.io\u003C\u002Fa>), go to \u003Cstrong>Settings &gt; Templates\u003C\u002Fstrong> and add the code to the \u003Cstrong>Custom footer\u003C\u002Fstrong> field (Twig is supported; it is injected before the closing \u003Ccode class=\"badge bg-soft-danger text-danger\">&lt;\u002Fbody&gt;\u003C\u002Fcode> tag).\u003C\u002Fp>\u003Cpre>\u003Ccode>{% if context == &quot;checkout&quot; %}\n&lt;script&gt;\nFC.client.on(&quot;ready.done&quot;, checkPromoProducts);\nFC.client.on(&quot;cart-item-remove.done&quot;, checkPromoProducts);\nFC.client.on(&quot;cart-item-quantity-update.done&quot;, checkPromoProducts);\nFC.client.on(&quot;cart-coupon-add.done&quot;, checkPromoProducts);\n \nfunction checkPromoProducts() {\n    var coupon_code = &quot;COUPON_CODE&quot;,\n        product_a_qty = 0,\n        coupon_id = 0;\n \n    if (FC.json.coupons.hasOwnProperty(coupon_code)) {\n        coupon_id = FC.json.coupons[coupon_code].id;\n    } \n\n    for (var i = 0; i &lt; FC.json.items.length; i++) {\n        if (FC.json.items[i].code == &quot;PRODUCT_CODE&quot;) {\n            product_a_qty += FC.json.items[i].quantity;\n        }\n    }\n\n    if (coupon_id &gt; 0 &amp;&amp; product_a_qty == 0) {\n        \u002F\u002F The coupon shouldn&#039;t apply anymore\n        FC.client.request(&quot;https:\u002F\u002F&quot; + FC.settings.storedomain + &quot;\u002Fcart?cart=remove_coupon&amp;coupon_code_id=&quot; + coupon_id).done(function(dataJSON) {\n            FC.cart.render();\n        });\n    } else if (coupon_id == 0 &amp;&amp; product_a_qty &gt; 0) {\n        \u002F\u002F They should have the coupon, let&#039;s add it\n        FC.client.request(&quot;https:\u002F\u002F&quot; + FC.settings.storedomain + &quot;\u002Fcart?coupon=&quot; + coupon_code).done(function(dataJSON) {\n            FC.cart.render();\n        });\n    }\n}\n&lt;\u002Fscript&gt;\n{% endif %}\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2>Step 2: Customize conditions\u003C\u002Fh2>\u003Cp>You&#039;ll also need to update the coupon code string in the script (it&#039;s near the top as \u003Ccode class=\"badge bg-soft-danger text-danger\">&quot;COUPON_CODE&quot;\u003C\u002Fcode>) and the product code string too (shown as \u003Ccode class=\"badge bg-soft-danger text-danger\">&quot;PRODUCT_CODE&quot;\u003C\u002Fcode>) to the coupon code you created.\u003C\u002Fp>",{"name":436,"created_at":437,"published_at":438,"updated_at":439,"id":440,"uuid":47,"content":441,"slug":48,"full_slug":48,"sort_by_date":59,"position":619,"tag_list":620,"is_startpage":24,"parent_id":59,"meta_data":59,"group_id":621,"first_published_at":622,"release_id":59,"lang":65,"path":59,"alternates":623,"default_full_slug":59,"translated_slugs":59},"Contact","2022-09-23T19:56:58.957Z","2025-05-08T18:24:40.382Z","2025-05-08T18:24:40.392Z",3138,{"seo":442,"_uid":445,"title":446,"action":447,"fields":448,"method":595,"columns":596,"subtitle":610,"component":48,"button_text":616,"submit_title":617,"submit_subtitle":618},{"_uid":443,"title":436,"plugin":444,"description":13},"24ff7574-3bcc-48d2-85b5-e529dfea1cc4","meta-fields","8f54f1da-9d8f-49b2-89e7-840e886491cb","We're here to help.","https:\u002F\u002Fusebasin.com\u002Ff\u002F029f48d65402",[449,454,458,566,569,574,589],{"_uid":450,"name":451,"type":332,"label":452,"options":13,"required":33,"component":453,"placeholder":13},"9a70b226-2036-4f90-a052-b3efa61c5896","name","Name","form___field",{"_uid":455,"name":456,"type":456,"label":457,"options":13,"required":33,"component":453,"placeholder":13},"86ba35be-ff43-4a28-8633-14052a8f6622","email","Email Address",{"_uid":459,"name":460,"type":461,"label":462,"options":463,"required":33,"component":453,"conditions":464,"placeholder":13},"3f827475-492c-4f97-aa1e-2386ac263b6c","topic","select","Topic","Presales, Support, Billing, Partnerships, Order Enquiry, Other",[465,520,530,537,545,553,559],{"_uid":466,"equals":467,"fields":468,"component":519},"e21d97dd-e68e-4fa6-ba97-bc40f3041dde","Order Enquiry",[469],{"_uid":470,"body":471,"type":517,"title":13,"component":518},"b64992bc-6d53-48b8-b7a0-d81e5a062e50",{"type":324,"content":472},[473],{"type":327,"content":474},[475,477,484,486,488,489,493,495,500,508,510,515],{"text":476,"type":332},"We are ",{"text":478,"type":332,"marks":479},"Foxy.io",[480],{"type":359,"attrs":481},{"href":482,"uuid":59,"anchor":59,"custom":483,"target":59,"linktype":31},"http:\u002F\u002FFoxy.io",{},{"text":485,"type":332},", an ecommerce platform powering ecommerce for other merchants. We do not sell products, and are unable to assist with questions about order statuses or refunds for any merchants using our platform. Please contact the merchant you ordered from for assistance. If you’d like to report a store using Foxy for fraudulent practices, please select ‘other’ in the subject.",{"type":487},"hard_break",{"type":487},{"text":490,"type":332,"marks":491},"NOTE:",[492],{"type":367},{"text":494,"type":332}," We are ",{"text":496,"type":332,"marks":497},"not ",[498],{"type":499},"italic",{"text":501,"type":332,"marks":502},"Foxy.in",[503,507],{"type":359,"attrs":504},{"href":505,"uuid":59,"anchor":59,"custom":506,"target":59,"linktype":31},"http:\u002F\u002FFoxy.in",{},{"type":499},{"text":509,"type":332},". We are not in any way affiliated with ",{"text":501,"type":332,"marks":511},[512],{"type":359,"attrs":513},{"href":505,"uuid":59,"anchor":59,"custom":514,"target":59,"linktype":31},{},{"text":516,"type":332},", and cannot help in any way with your order from that website.","danger","global___alert","form___condition",{"_uid":521,"equals":522,"fields":523,"component":519},"8765c3e1-25cf-44aa-b8ea-fc6094acf9c3","Presales",[524],{"_uid":525,"name":526,"type":527,"label":13,"options":13,"required":24,"component":453,"conditions":528,"placeholder":13,"default_value":529},"cf464f8e-d643-4f6e-af29-d3abffaf7380","department_email_address","hidden",[],"hello@foxy.io",{"_uid":531,"equals":208,"fields":532,"component":519},"4007b6d8-77e5-421d-bd1e-6f336dd853fb",[533],{"_uid":534,"name":526,"type":527,"label":13,"options":13,"required":24,"component":453,"conditions":535,"placeholder":13,"default_value":536},"7b4c6aa5-a68c-45e0-9ce1-0a36af10c0c2",[],"help@foxy.io",{"_uid":538,"equals":539,"fields":540,"component":519},"1dbb8f11-613d-43cd-9e09-1b94f6e19219","Billing",[541],{"_uid":542,"name":526,"type":527,"label":13,"options":13,"required":24,"component":453,"conditions":543,"placeholder":13,"default_value":544},"a0ac0d1b-bc4f-4a6c-a682-581d450b0b73",[],"help+billing@foxy.io",{"_uid":546,"equals":547,"fields":548,"component":519},"a0a53a50-7172-4a29-ba58-181e38874e12","Partnerships",[549],{"_uid":550,"name":526,"type":527,"label":13,"options":13,"required":24,"component":453,"conditions":551,"placeholder":13,"default_value":552},"7aa011d9-f374-4aed-b5a5-929b54aaf152",[],"partners@foxy.io",{"_uid":554,"equals":467,"fields":555,"component":519},"a4cd431f-25d5-41c7-bfdc-02c908c8fb47",[556],{"_uid":557,"name":526,"type":527,"label":13,"options":13,"required":24,"component":453,"conditions":558,"placeholder":13,"default_value":529},"f5d52168-d6ae-451b-94ee-2ced1cbd28ad",[],{"_uid":560,"equals":561,"fields":562,"component":519},"25aba1ed-eb41-4bbc-aa89-f7a7167ea86e","Other",[563],{"_uid":564,"name":526,"type":527,"label":13,"options":13,"required":24,"component":453,"conditions":565,"placeholder":13,"default_value":529},"f40dfaef-c203-4b71-bf4e-e1b43cef192b",[],{"_uid":567,"component":568},"e9c53a05-f40a-4510-aaf8-bc072a235a0c","form___subject",{"_uid":570,"name":571,"type":572,"label":573,"options":13,"required":33,"component":453,"placeholder":13},"a4c4d385-fff4-4978-99fb-b68cfea623d6","message","textarea","Message",{"_uid":575,"name":576,"type":461,"label":577,"options":578,"required":33,"component":453,"conditions":579,"placeholder":13},"8a3c9f85-f438-427d-9c7a-d7b295a14b5b","existing_user","Are you an existing user?","No, Yes",[580],{"_uid":581,"equals":582,"fields":583,"component":519},"115933d6-262a-4b59-8fa8-579c5ad73de1","Yes",[584],{"_uid":585,"name":586,"type":332,"label":587,"options":13,"required":33,"component":453,"conditions":588,"placeholder":13},"44b6ff23-98f0-4e95-b7f5-c23e06415c2d","subdomain","Store Subdomain",[],{"_uid":590,"name":591,"type":461,"label":592,"options":593,"required":33,"component":453,"conditions":594,"placeholder":13},"922a5cef-3af2-4113-8855-36c7910e3ee3","user_type","What type of user are you?","Developer, Designer, Merchant",[],"POST",[597],{"_uid":598,"text":599,"title":608,"component":609},"7323b90d-a93a-4bf1-baa9-20d0b7ead61b",{"type":324,"content":600},[601],{"type":327,"content":602},[603,605,606],{"text":604,"type":332},"855.369.9227",{"type":487},{"text":607,"type":332},"9:30am-6pm Central M-F","Pre-sales, Sales, & Partnerships","contact___footer_column",{"type":324,"content":611},[612],{"type":327,"content":613},[614],{"text":615,"type":332},"Get in touch to get help from our friendly support team.","Submit","Success!","Your email has been received. We'll get back to you as soon as we can, but it might take a business day. If you don't hear back from us in a timely manner, please check your spam folder to ensure our reply didn't go there.",-80,[],"2fd9fb7d-a48a-4184-acfd-30022d8d6f08","2022-09-23T20:10:45.360Z",[],[288,625,652],{"name":626,"created_at":627,"published_at":628,"updated_at":629,"id":630,"uuid":631,"content":632,"slug":646,"full_slug":647,"sort_by_date":59,"position":648,"tag_list":649,"is_startpage":24,"parent_id":310,"meta_data":59,"group_id":650,"first_published_at":628,"release_id":59,"lang":65,"path":59,"alternates":651,"default_full_slug":59,"translated_slugs":59},"Coupons & Discounts","2023-01-19T16:01:39.392Z","2023-01-19T17:25:31.488Z","2023-01-19T17:25:31.508Z",28227,"3399647a-a5ec-4a36-a383-09069b49f04a",{"_uid":633,"icon":634,"name":626,"guides":635,"summary":636,"category":13,"component":297,"blog_posts":637,"content_hub":24,"icon_custom":638,"case_studies":639,"faq_sections":640,"help_articles":641,"featured_guides":642,"mailbox_category":13,"featured_articles":643,"featured_blog_posts":644,"featured_case_studies":645},"82421646-2a32-455c-b208-c2fd3296459b","fa-badge-percent",[],"Create and manage coupon, product, and category specific discounts.",[],{"id":59,"alt":59,"name":13,"focus":59,"title":59,"filename":13,"copyright":59,"fieldtype":81},[],[],[],[],[],[],[],"coupons-discounts","help\u002Fcategories\u002Fcoupons-discounts",190,[],"d55abf17-72ea-410a-8850-e99c0527aebb",[],{"name":653,"created_at":654,"published_at":655,"updated_at":656,"id":657,"uuid":414,"content":658,"slug":671,"full_slug":672,"sort_by_date":59,"position":673,"tag_list":674,"is_startpage":24,"parent_id":310,"meta_data":59,"group_id":675,"first_published_at":655,"release_id":59,"lang":65,"path":59,"alternates":676,"default_full_slug":59,"translated_slugs":59},"Create coupons","2026-07-16T16:45:59.556Z","2026-07-16T17:05:22.113Z","2026-07-16T17:05:22.125Z",198781991199122,{"_uid":659,"icon":13,"name":653,"type":660,"pinned":24,"summary":661,"category":631,"component":297,"blog_posts":662,"icon_custom":663,"case_studies":665,"faq_sections":666,"featured_guides":667,"mailbox_category":13,"featured_articles":668,"featured_blog_posts":669,"featured_case_studies":670},"56b1797f-8cef-4e21-862f-f256a1cc24be","simple","Create coupons, add codes, and apply them automatically with a link or form.",[],{"id":59,"alt":59,"name":13,"focus":59,"title":59,"source":59,"filename":13,"copyright":59,"fieldtype":81,"meta_data":664},{},[],[],[],[],[],[],"create-coupons","help\u002Fcategories\u002Fcreate-coupons",-600,[],"559e2c34-94be-4add-b339-84f6a8bdd6b7",[],{},1784742857232]