[{"data":1,"prerenderedAt":751},["ShallowReactive",2],{"header:help":3,"footer:default":67,"story:navigation\u002Fsearch:help":250,"story:help\u002Fcategories":288,"story:help\u002Farticles\u002Fcreate-a-bundled-product":314,"no-guide:create-a-bundled-product":59,"article:\u002Fhelp\u002Farticles\u002Fcreate-a-bundled-product":492,"story:contact":506,"help:tree:accd6360-11f5-4eb3-bca2-7a0df7e3ef8d":696,"_apollo:default":750},{"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":484,"full_slug":485,"sort_by_date":59,"position":486,"tag_list":487,"is_startpage":24,"parent_id":488,"meta_data":59,"group_id":489,"first_published_at":490,"release_id":59,"lang":65,"path":59,"alternates":491,"default_full_slug":59,"translated_slugs":59},"Create a bundled product","2026-06-22T23:31:28.354Z","2026-06-29T20:50:25.694Z","2026-06-29T20:50:25.717Z",190388176355113,"accd6360-11f5-4eb3-bca2-7a0df7e3ef8d",{"_uid":322,"body":323,"name":315,"image":479,"pinned":24,"summary":481,"category":482,"component":266,"related_articles":483},"592ef60e-02b3-4b58-98e3-fd3a29993c80",{"type":324,"content":325},"doc",[326,333,340,369,375,380,385,390,407,412,417],{"type":327,"attrs":328,"content":329},"paragraph",{"textAlign":59},[330],{"text":331,"type":332},"A bundled product uses a parent\u002Fchild relationship — the child product is attached to the parent and cannot be managed independently in the cart. Use this when products must be sold together, such as a main product with an included accessory or add-on.","text",{"type":334,"attrs":335,"content":337},"heading",{"level":336,"textAlign":59},2,[338],{"text":339,"type":332},"How to set it up",{"type":327,"attrs":341,"content":342},{"textAlign":59},[343,345,350,352,355,357,361,363,367],{"text":344,"type":332},"Use the ",{"text":346,"type":332,"marks":347},"parent_code",[348],{"type":349},"code",{"text":351,"type":332}," parameter on the child product, set to match the ",{"text":349,"type":332,"marks":353},[354],{"type":349},{"text":356,"type":332}," of the parent product. Both products are added in a single form using integer prefixes (",{"text":358,"type":332,"marks":359},"1:",[360],{"type":349},{"text":362,"type":332},", ",{"text":364,"type":332,"marks":365},"2:",[366],{"type":349},{"text":368,"type":332},") to separate them:",{"type":370,"attrs":371,"content":372},"code_block",{"class":59},[373],{"text":374,"type":332},"\u003Cform action=\"https:\u002F\u002FYOURSUBDOMAIN.foxycart.com\u002Fcart\" method=\"post\">\n  \u003Cinput type=\"hidden\" name=\"name\" value=\"Parent product\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"price\" value=\"19.99\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"code\" value=\"741\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"2:name\" value=\"Child product\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"2:price\" value=\"0.00\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"2:parent_code\" value=\"741\" \u002F>\n  \u003Cinput type=\"submit\" value=\"Add to cart\" \u002F>\n\u003C\u002Fform>\n",{"type":327,"attrs":376,"content":377},{"textAlign":59},[378],{"text":379,"type":332},"The same can be done with a link:",{"type":370,"attrs":381,"content":382},{"class":59},[383],{"text":384,"type":332},"https:\u002F\u002FYOURSUBDOMAIN.foxycart.com\u002Fcart?name=Parent+product&price=19.99&code=741&2:name=Child+product&2:price=0.00&2:parent_code=741\n",{"type":334,"attrs":386,"content":387},{"level":336,"textAlign":59},[388],{"text":389,"type":332},"Making the child product optional",{"type":327,"attrs":391,"content":392},{"textAlign":59},[393,395,399,401,405],{"text":394,"type":332},"To make the child product optional, set ",{"text":396,"type":332,"marks":397},"2:quantity",[398],{"type":349},{"text":400,"type":332}," to ",{"text":402,"type":332,"marks":403},"0",[404],{"type":349},{"text":406,"type":332}," and add a checkbox for the customer to add it:",{"type":370,"attrs":408,"content":409},{"class":59},[410],{"text":411,"type":332},"\u003Cform action=\"https:\u002F\u002FYOURSUBDOMAIN.foxycart.com\u002Fcart\" method=\"post\">\n  \u003Cinput type=\"hidden\" name=\"name\" value=\"Parent product\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"price\" value=\"19.99\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"code\" value=\"741\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"2:name\" value=\"Optional child product\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"2:price\" value=\"1.99\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"2:parent_code\" value=\"741\" \u002F>\n  \u003Cinput type=\"hidden\" name=\"2:quantity\" value=\"0\" \u002F>\n  \u003Clabel>\n    \u003Cinput type=\"checkbox\" name=\"2:quantity\" value=\"1\"> Also add the optional child product ($1.99)\n  \u003C\u002Flabel>\n  \u003Cinput type=\"submit\" value=\"Add to cart\" \u002F>\n\u003C\u002Fform>\n",{"type":334,"attrs":413,"content":414},{"level":336,"textAlign":59},[415],{"text":416,"type":332},"Notes",{"type":418,"content":419},"bullet_list",[420,428,450,467],{"type":421,"content":422},"list_item",[423],{"type":327,"attrs":424,"content":425},{"textAlign":59},[426],{"text":427,"type":332},"When a parent product is deleted from the cart, all child products attached to it are deleted too.",{"type":421,"content":429},[430],{"type":327,"attrs":431,"content":432},{"textAlign":59},[433,435,439,441,448],{"text":434,"type":332},"To prevent the child product from being removed or adjusted independently, set ",{"text":436,"type":332,"marks":437},"quantity_min=1",[438],{"type":349},{"text":440,"type":332}," — see ",{"text":442,"type":332,"marks":443},"Prevent child products from being removed",[444],{"type":445,"attrs":446},"link",{"href":447,"uuid":59,"anchor":59,"target":59,"linktype":31},"https:\u002F\u002Ffoxy.io\u002Fhelp\u002Farticles\u002Fprevent-child-products-from-being-removed",{"text":449,"type":332},".",{"type":421,"content":451},[452],{"type":327,"attrs":453,"content":454},{"textAlign":59},[455,457,460,462,465],{"text":456,"type":332},"If adding multiple bundles of the same product, use a unique ",{"text":349,"type":332,"marks":458},[459],{"type":349},{"text":461,"type":332}," for each parent product. If two bundles share the same parent code and have locked child products (",{"text":436,"type":332,"marks":463},[464],{"type":349},{"text":466,"type":332},"), Foxy will treat them as one bundle with an increased quantity rather than two separate bundles — resulting in all child products being attached to a single parent with doubled quantities. A randomly generated code on each parent is a reliable way to avoid this.",{"type":421,"content":468},[469],{"type":327,"attrs":470,"content":471},{"textAlign":59},[472,474,477],{"text":473,"type":332},"The ",{"text":346,"type":332,"marks":475},[476],{"type":349},{"text":478,"type":332}," value can match either the original parent code or the modified parent code on the initial add-to-cart. On subsequent requests, children must use the modified parent code.",{"id":59,"alt":59,"name":13,"focus":59,"title":59,"source":59,"filename":13,"copyright":59,"fieldtype":81,"meta_data":480},{},"How to add a parent and child product to the cart together using bundled product relationships.","432c156f-b2cf-4306-afd7-32cee9bc575a",[],"create-a-bundled-product","help\u002Farticles\u002Fcreate-a-bundled-product",-2390,[],2659,"0f9a1bf2-4273-4d05-a9da-7bc930b71879","2026-06-23T11:32:28.933Z",[],{"html":493,"sections":494,"segments":502},"\u003Cp>A bundled product uses a parent\u002Fchild relationship — the child product is attached to the parent and cannot be managed independently in the cart. Use this when products must be sold together, such as a main product with an included accessory or add-on.\u003C\u002Fp>\u003Csection id=\"how-to-set-it-up\" data-title=\"How to set it up\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"how-to-set-it-up\">How to set it up\u003C\u002Fh2>\u003Cp>Use the \u003Ccode class=\"badge bg-soft-danger text-danger\">parent_code\u003C\u002Fcode> parameter on the child product, set to match the \u003Ccode class=\"badge bg-soft-danger text-danger\">code\u003C\u002Fcode> of the parent product. Both products are added in a single form using integer prefixes (\u003Ccode class=\"badge bg-soft-danger text-danger\">1:\u003C\u002Fcode>, \u003Ccode class=\"badge bg-soft-danger text-danger\">2:\u003C\u002Fcode>) to separate them:\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>\u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">form\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">action\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;https:\u002F\u002FYOURSUBDOMAIN.foxycart.com\u002Fcart&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">method\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;post&quot;\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;name&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;Parent product&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;price&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;19.99&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;code&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;741&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;2:name&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;Child product&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;2:price&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;0.00&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;2:parent_code&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;741&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;submit&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;Add to cart&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n\u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">form\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cp>The same can be done with a link:\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>https:\u002F\u002FYOURSUBDOMAIN.foxycart.com\u002Fcart?name=Parent+product&amp;price=19.99&amp;code=741&amp;2:name=Child+product&amp;2:price=0.00&amp;2:parent_code=741\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection id=\"making-the-child-product-optional\" data-title=\"Making the child product optional\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"making-the-child-product-optional\">Making the child product optional\u003C\u002Fh2>\u003Cp>To make the child product optional, set \u003Ccode class=\"badge bg-soft-danger text-danger\">2:quantity\u003C\u002Fcode> to \u003Ccode class=\"badge bg-soft-danger text-danger\">0\u003C\u002Fcode> and add a checkbox for the customer to add it:\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>\u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">form\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">action\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;https:\u002F\u002FYOURSUBDOMAIN.foxycart.com\u002Fcart&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">method\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;post&quot;\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;name&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;Parent product&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;price&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;19.99&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;code&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;741&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;2:name&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;Optional child product&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;2:price&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;1.99&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;2:parent_code&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;741&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;hidden&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;2:quantity&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;0&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">label\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n    \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;checkbox&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">name\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;2:quantity&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;1&quot;\u003C\u002Fspan>&gt;\u003C\u002Fspan> Also add the optional child product ($1.99)\n  \u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">label\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">input\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">type\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;submit&quot;\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">value\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;Add to cart&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n\u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">form\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection id=\"notes\" data-title=\"Notes\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"notes\">Notes\u003C\u002Fh2>\u003Cul>\u003Cli>\u003Cp>When a parent product is deleted from the cart, all child products attached to it are deleted too.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>To prevent the child product from being removed or adjusted independently, set \u003Ccode class=\"badge bg-soft-danger text-danger\">quantity_min=1\u003C\u002Fcode> — see \u003Ca href=\"https:\u002F\u002Ffoxy.io\u002Fhelp\u002Farticles\u002Fprevent-child-products-from-being-removed\" class=\"\">Prevent child products from being removed\u003C\u002Fa>.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>If adding multiple bundles of the same product, use a unique \u003Ccode class=\"badge bg-soft-danger text-danger\">code\u003C\u002Fcode> for each parent product. If two bundles share the same parent code and have locked child products (\u003Ccode class=\"badge bg-soft-danger text-danger\">quantity_min=1\u003C\u002Fcode>), Foxy will treat them as one bundle with an increased quantity rather than two separate bundles — resulting in all child products being attached to a single parent with doubled quantities. A randomly generated code on each parent is a reliable way to avoid this.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>The \u003Ccode class=\"badge bg-soft-danger text-danger\">parent_code\u003C\u002Fcode> value can match either the original parent code or the modified parent code on the initial add-to-cart. On subsequent requests, children must use the modified parent code.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>\u003C\u002Fsection>",[495,498,500],{"id":496,"title":339,"level":497},"how-to-set-it-up","H2",{"id":499,"title":389,"level":497},"making-the-child-product-optional",{"id":501,"title":416,"level":497},"notes",[503],{"type":504,"content":505},"html","\u003Cp>A bundled product uses a parent\u002Fchild relationship — the child product is attached to the parent and cannot be managed independently in the cart. Use this when products must be sold together, such as a main product with an included accessory or add-on.\u003C\u002Fp>\u003Ch2>How to set it up\u003C\u002Fh2>\u003Cp>Use the \u003Ccode class=\"badge bg-soft-danger text-danger\">parent_code\u003C\u002Fcode> parameter on the child product, set to match the \u003Ccode class=\"badge bg-soft-danger text-danger\">code\u003C\u002Fcode> of the parent product. Both products are added in a single form using integer prefixes (\u003Ccode class=\"badge bg-soft-danger text-danger\">1:\u003C\u002Fcode>, \u003Ccode class=\"badge bg-soft-danger text-danger\">2:\u003C\u002Fcode>) to separate them:\u003C\u002Fp>\u003Cpre>\u003Ccode>&lt;form action=&quot;https:\u002F\u002FYOURSUBDOMAIN.foxycart.com\u002Fcart&quot; method=&quot;post&quot;&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;name&quot; value=&quot;Parent product&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;price&quot; value=&quot;19.99&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;code&quot; value=&quot;741&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;2:name&quot; value=&quot;Child product&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;2:price&quot; value=&quot;0.00&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;2:parent_code&quot; value=&quot;741&quot; \u002F&gt;\n  &lt;input type=&quot;submit&quot; value=&quot;Add to cart&quot; \u002F&gt;\n&lt;\u002Fform&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>The same can be done with a link:\u003C\u002Fp>\u003Cpre>\u003Ccode>https:\u002F\u002FYOURSUBDOMAIN.foxycart.com\u002Fcart?name=Parent+product&amp;price=19.99&amp;code=741&amp;2:name=Child+product&amp;2:price=0.00&amp;2:parent_code=741\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2>Making the child product optional\u003C\u002Fh2>\u003Cp>To make the child product optional, set \u003Ccode class=\"badge bg-soft-danger text-danger\">2:quantity\u003C\u002Fcode> to \u003Ccode class=\"badge bg-soft-danger text-danger\">0\u003C\u002Fcode> and add a checkbox for the customer to add it:\u003C\u002Fp>\u003Cpre>\u003Ccode>&lt;form action=&quot;https:\u002F\u002FYOURSUBDOMAIN.foxycart.com\u002Fcart&quot; method=&quot;post&quot;&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;name&quot; value=&quot;Parent product&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;price&quot; value=&quot;19.99&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;code&quot; value=&quot;741&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;2:name&quot; value=&quot;Optional child product&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;2:price&quot; value=&quot;1.99&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;2:parent_code&quot; value=&quot;741&quot; \u002F&gt;\n  &lt;input type=&quot;hidden&quot; name=&quot;2:quantity&quot; value=&quot;0&quot; \u002F&gt;\n  &lt;label&gt;\n    &lt;input type=&quot;checkbox&quot; name=&quot;2:quantity&quot; value=&quot;1&quot;&gt; Also add the optional child product ($1.99)\n  &lt;\u002Flabel&gt;\n  &lt;input type=&quot;submit&quot; value=&quot;Add to cart&quot; \u002F&gt;\n&lt;\u002Fform&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2>Notes\u003C\u002Fh2>\u003Cul>\u003Cli>\u003Cp>When a parent product is deleted from the cart, all child products attached to it are deleted too.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>To prevent the child product from being removed or adjusted independently, set \u003Ccode class=\"badge bg-soft-danger text-danger\">quantity_min=1\u003C\u002Fcode> — see \u003Ca href=\"https:\u002F\u002Ffoxy.io\u002Fhelp\u002Farticles\u002Fprevent-child-products-from-being-removed\" class=\"\">Prevent child products from being removed\u003C\u002Fa>.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>If adding multiple bundles of the same product, use a unique \u003Ccode class=\"badge bg-soft-danger text-danger\">code\u003C\u002Fcode> for each parent product. If two bundles share the same parent code and have locked child products (\u003Ccode class=\"badge bg-soft-danger text-danger\">quantity_min=1\u003C\u002Fcode>), Foxy will treat them as one bundle with an increased quantity rather than two separate bundles — resulting in all child products being attached to a single parent with doubled quantities. A randomly generated code on each parent is a reliable way to avoid this.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>The \u003Ccode class=\"badge bg-soft-danger text-danger\">parent_code\u003C\u002Fcode> value can match either the original parent code or the modified parent code on the initial add-to-cart. On subsequent requests, children must use the modified parent code.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>",{"name":507,"created_at":508,"published_at":509,"updated_at":510,"id":511,"uuid":47,"content":512,"slug":48,"full_slug":48,"sort_by_date":59,"position":691,"tag_list":692,"is_startpage":24,"parent_id":59,"meta_data":59,"group_id":693,"first_published_at":694,"release_id":59,"lang":65,"path":59,"alternates":695,"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":513,"_uid":516,"title":517,"action":518,"fields":519,"method":667,"columns":668,"subtitle":682,"component":48,"button_text":688,"submit_title":689,"submit_subtitle":690},{"_uid":514,"title":507,"plugin":515,"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",[520,525,529,638,641,646,661],{"_uid":521,"name":522,"type":332,"label":523,"options":13,"required":33,"component":524,"placeholder":13},"9a70b226-2036-4f90-a052-b3efa61c5896","name","Name","form___field",{"_uid":526,"name":527,"type":527,"label":528,"options":13,"required":33,"component":524,"placeholder":13},"86ba35be-ff43-4a28-8633-14052a8f6622","email","Email Address",{"_uid":530,"name":531,"type":532,"label":533,"options":534,"required":33,"component":524,"conditions":535,"placeholder":13},"3f827475-492c-4f97-aa1e-2386ac263b6c","topic","select","Topic","Presales, Support, Billing, Partnerships, Order Enquiry, Other",[536,592,602,609,617,625,631],{"_uid":537,"equals":538,"fields":539,"component":591},"e21d97dd-e68e-4fa6-ba97-bc40f3041dde","Order Enquiry",[540],{"_uid":541,"body":542,"type":589,"title":13,"component":590},"b64992bc-6d53-48b8-b7a0-d81e5a062e50",{"type":324,"content":543},[544],{"type":327,"content":545},[546,548,555,557,559,560,565,567,572,580,582,587],{"text":547,"type":332},"We are ",{"text":549,"type":332,"marks":550},"Foxy.io",[551],{"type":445,"attrs":552},{"href":553,"uuid":59,"anchor":59,"custom":554,"target":59,"linktype":31},"http:\u002F\u002FFoxy.io",{},{"text":556,"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":558},"hard_break",{"type":558},{"text":561,"type":332,"marks":562},"NOTE:",[563],{"type":564},"bold",{"text":566,"type":332}," We are ",{"text":568,"type":332,"marks":569},"not ",[570],{"type":571},"italic",{"text":573,"type":332,"marks":574},"Foxy.in",[575,579],{"type":445,"attrs":576},{"href":577,"uuid":59,"anchor":59,"custom":578,"target":59,"linktype":31},"http:\u002F\u002FFoxy.in",{},{"type":571},{"text":581,"type":332},". We are not in any way affiliated with ",{"text":573,"type":332,"marks":583},[584],{"type":445,"attrs":585},{"href":577,"uuid":59,"anchor":59,"custom":586,"target":59,"linktype":31},{},{"text":588,"type":332},", and cannot help in any way with your order from that website.","danger","global___alert","form___condition",{"_uid":593,"equals":594,"fields":595,"component":591},"8765c3e1-25cf-44aa-b8ea-fc6094acf9c3","Presales",[596],{"_uid":597,"name":598,"type":599,"label":13,"options":13,"required":24,"component":524,"conditions":600,"placeholder":13,"default_value":601},"cf464f8e-d643-4f6e-af29-d3abffaf7380","department_email_address","hidden",[],"hello@foxy.io",{"_uid":603,"equals":208,"fields":604,"component":591},"4007b6d8-77e5-421d-bd1e-6f336dd853fb",[605],{"_uid":606,"name":598,"type":599,"label":13,"options":13,"required":24,"component":524,"conditions":607,"placeholder":13,"default_value":608},"7b4c6aa5-a68c-45e0-9ce1-0a36af10c0c2",[],"help@foxy.io",{"_uid":610,"equals":611,"fields":612,"component":591},"1dbb8f11-613d-43cd-9e09-1b94f6e19219","Billing",[613],{"_uid":614,"name":598,"type":599,"label":13,"options":13,"required":24,"component":524,"conditions":615,"placeholder":13,"default_value":616},"a0ac0d1b-bc4f-4a6c-a682-581d450b0b73",[],"help+billing@foxy.io",{"_uid":618,"equals":619,"fields":620,"component":591},"a0a53a50-7172-4a29-ba58-181e38874e12","Partnerships",[621],{"_uid":622,"name":598,"type":599,"label":13,"options":13,"required":24,"component":524,"conditions":623,"placeholder":13,"default_value":624},"7aa011d9-f374-4aed-b5a5-929b54aaf152",[],"partners@foxy.io",{"_uid":626,"equals":538,"fields":627,"component":591},"a4cd431f-25d5-41c7-bfdc-02c908c8fb47",[628],{"_uid":629,"name":598,"type":599,"label":13,"options":13,"required":24,"component":524,"conditions":630,"placeholder":13,"default_value":601},"f5d52168-d6ae-451b-94ee-2ced1cbd28ad",[],{"_uid":632,"equals":633,"fields":634,"component":591},"25aba1ed-eb41-4bbc-aa89-f7a7167ea86e","Other",[635],{"_uid":636,"name":598,"type":599,"label":13,"options":13,"required":24,"component":524,"conditions":637,"placeholder":13,"default_value":601},"f40dfaef-c203-4b71-bf4e-e1b43cef192b",[],{"_uid":639,"component":640},"e9c53a05-f40a-4510-aaf8-bc072a235a0c","form___subject",{"_uid":642,"name":643,"type":644,"label":645,"options":13,"required":33,"component":524,"placeholder":13},"a4c4d385-fff4-4978-99fb-b68cfea623d6","message","textarea","Message",{"_uid":647,"name":648,"type":532,"label":649,"options":650,"required":33,"component":524,"conditions":651,"placeholder":13},"8a3c9f85-f438-427d-9c7a-d7b295a14b5b","existing_user","Are you an existing user?","No, Yes",[652],{"_uid":653,"equals":654,"fields":655,"component":591},"115933d6-262a-4b59-8fa8-579c5ad73de1","Yes",[656],{"_uid":657,"name":658,"type":332,"label":659,"options":13,"required":33,"component":524,"conditions":660,"placeholder":13},"44b6ff23-98f0-4e95-b7f5-c23e06415c2d","subdomain","Store Subdomain",[],{"_uid":662,"name":663,"type":532,"label":664,"options":665,"required":33,"component":524,"conditions":666,"placeholder":13},"922a5cef-3af2-4113-8855-36c7910e3ee3","user_type","What type of user are you?","Developer, Designer, Merchant",[],"POST",[669],{"_uid":670,"text":671,"title":680,"component":681},"7323b90d-a93a-4bf1-baa9-20d0b7ead61b",{"type":324,"content":672},[673],{"type":327,"content":674},[675,677,678],{"text":676,"type":332},"855.369.9227",{"type":558},{"text":679,"type":332},"9:30am-6pm Central M-F","Pre-sales, Sales, & Partnerships","contact___footer_column",{"type":324,"content":683},[684],{"type":327,"content":685},[686],{"text":687,"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,697,725],{"name":698,"created_at":699,"published_at":700,"updated_at":701,"id":702,"uuid":703,"content":704,"slug":718,"full_slug":719,"sort_by_date":59,"position":720,"tag_list":721,"is_startpage":24,"parent_id":310,"meta_data":59,"group_id":722,"first_published_at":723,"release_id":59,"lang":65,"path":59,"alternates":724,"default_full_slug":59,"translated_slugs":59},"Products","2023-01-19T16:20:53.075Z","2024-06-05T04:29:14.851Z","2024-06-05T04:29:14.872Z",28236,"389d5512-29ba-4a93-9cfa-9491d1618f73",{"_uid":705,"icon":706,"name":698,"guides":707,"pinned":24,"summary":708,"category":13,"component":297,"blog_posts":709,"content_hub":24,"icon_custom":710,"case_studies":711,"faq_sections":712,"help_articles":713,"featured_guides":714,"mailbox_category":13,"featured_articles":715,"featured_blog_posts":716,"featured_case_studies":717},"3551f6e8-765a-4b8d-8587-2e2eda4d2b23","fa-tags",[],"How products work, supported product types, inventory management, and more.",[],{"id":59,"alt":59,"name":13,"focus":59,"title":59,"filename":13,"copyright":59,"fieldtype":81},[],[],[],[],[],[],[],"products","help\u002Fcategories\u002Fproducts",150,[],"c025c7a7-0d20-4244-938a-c8d6588e1269","2023-01-19T17:25:32.570Z",[],{"name":726,"created_at":727,"published_at":728,"updated_at":729,"id":730,"uuid":482,"content":731,"slug":744,"full_slug":745,"sort_by_date":59,"position":746,"tag_list":747,"is_startpage":24,"parent_id":310,"meta_data":59,"group_id":748,"first_published_at":728,"release_id":59,"lang":65,"path":59,"alternates":749,"default_full_slug":59,"translated_slugs":59},"Bundled & Grouped Products","2026-06-18T21:36:06.357Z","2026-06-18T21:56:38.686Z","2026-06-18T21:56:38.697Z",188944246245314,{"_uid":732,"icon":13,"name":726,"type":733,"pinned":24,"summary":734,"category":703,"component":297,"blog_posts":735,"icon_custom":736,"case_studies":738,"faq_sections":739,"featured_guides":740,"mailbox_category":13,"featured_articles":741,"featured_blog_posts":742,"featured_case_studies":743},"120a5d23-63dd-4778-a4b5-ef287510017d","simple","How to add multiple related products to the cart together using parent and child product relationships.",[],{"id":59,"alt":59,"name":13,"focus":59,"title":59,"source":59,"filename":13,"copyright":59,"fieldtype":81,"meta_data":737},{},[],[],[],[],[],[],"bundled-and-grouped-products","help\u002Fcategories\u002Fbundled-and-grouped-products",-400,[],"6db914c8-e105-4ef8-a276-bcb7d97a7960",[],{},1784562225545]