[{"data":1,"prerenderedAt":819},["ShallowReactive",2],{"header:help":3,"footer:default":67,"story:navigation\u002Fsearch:help":250,"story:help\u002Fcategories":288,"story:help\u002Farticles\u002Fhandle-checkout-errors-and-inline-validation":314,"no-guide:handle-checkout-errors-and-inline-validation":59,"article:\u002Fhelp\u002Farticles\u002Fhandle-checkout-errors-and-inline-validation":559,"story:contact":575,"help:tree:5fbdb82d-8f8c-4d84-a1b7-0fc9f06bea50":765,"_apollo:default":818},{"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":552,"full_slug":553,"sort_by_date":59,"position":554,"tag_list":555,"is_startpage":24,"parent_id":556,"meta_data":59,"group_id":557,"first_published_at":317,"release_id":59,"lang":65,"path":59,"alternates":558,"default_full_slug":59,"translated_slugs":59},"Handle checkout errors and inline validation","2026-07-23T04:01:02.680Z","2026-07-23T04:10:01.256Z","2026-07-23T04:10:01.272Z",201071258392887,"5fbdb82d-8f8c-4d84-a1b7-0fc9f06bea50",{"_uid":322,"body":323,"name":315,"image":547,"pinned":24,"summary":549,"category":550,"component":266,"related_articles":551},"5e0c5675-ce25-4b61-83d0-979af64a579a",{"type":324,"content":325},"doc",[326,333,338,345,350,382,387,393,414,422,427,444,449,454,459,489,506,511,533,538],{"type":327,"attrs":328,"content":329},"paragraph",{"textAlign":59},[330],{"text":331,"type":332},"Customize how Foxy highlights fields, updates the error bar, and fires events when a checkout field has a validation error.","text",{"type":327,"attrs":334,"content":335},{"textAlign":59},[336],{"text":337,"type":332},"Required fields generate an error if a customer tabs off of them without filling them in. Inline errors have three independent parts, so you can use one, two, or all three depending on what you need.",{"type":339,"attrs":340,"content":342},"heading",{"level":341,"textAlign":59},2,[343],{"text":344,"type":332},"1. Field highlighting",{"type":327,"attrs":346,"content":347},{"textAlign":59},[348],{"text":349,"type":332},"The specific field is highlighted by adding a class to an element, controlled through data attributes:",{"type":351,"content":352},"bullet_list",[353,366],{"type":354,"content":355},"list_item",[356],{"type":327,"attrs":357,"content":358},{"textAlign":59},[359,364],{"text":360,"type":332,"marks":361},"data-fc-error-class",[362],{"type":363},"code",{"text":365,"type":332}," — required to use inline-error highlighting. Defines the class added to the element when it has an error. If this attribute isn’t found, Foxy falls back to re-rendering the block instead, which is more expensive from a browser performance perspective.",{"type":354,"content":367},[368],{"type":327,"attrs":369,"content":370},{"textAlign":59},[371,375,377,380],{"text":372,"type":332,"marks":373},"data-fc-error-for",[374],{"type":363},{"text":376,"type":332}," — needed only if you want the error class applied to an element other than the input itself, such as a parent element. Its value is the name of the input. Not required if ",{"text":360,"type":332,"marks":378},[379],{"type":363},{"text":381,"type":332}," is on the input directly.",{"type":327,"attrs":383,"content":384},{"textAlign":59},[385],{"text":386,"type":332},"For example, on the shipping last name field’s parent element:",{"type":388,"attrs":389,"content":390},"code_block",{"class":59},[391],{"text":392,"type":332},"data-fc-error-class=\"invalid\" data-fc-error-for=\"shipping-last-name\"\n",{"type":327,"attrs":394,"content":395},{"textAlign":59},[396,398,402,404,407,409,412],{"text":397,"type":332},"When there’s an error, the ",{"text":399,"type":332,"marks":400},"invalid",[401],{"type":363},{"text":403,"type":332}," class is added; once resolved, it’s removed the same way — Foxy checks the input for ",{"text":360,"type":332,"marks":405},[406],{"type":363},{"text":408,"type":332}," and removes the class if present, then checks for a matching ",{"text":372,"type":332,"marks":410},[411],{"type":363},{"text":413,"type":332}," and removes the class there too, if present.",{"type":327,"attrs":415,"content":416},{"textAlign":59},[417,420],{"text":360,"type":332,"marks":418},[419],{"type":363},{"text":421,"type":332}," can also take a second, comma-separated class to toggle on success:",{"type":388,"attrs":423,"content":424},{"class":59},[425],{"text":426,"type":332},"\u003Cdiv class=\"alert alert-danger\"\n    data-fc-error-for=\"cc_cvv2\"\n    data-fc-error-class=\"show,hidden\">\u003C\u002Fdiv>\n",{"type":327,"attrs":428,"content":429},{"textAlign":59},[430,432,436,438,442],{"text":431,"type":332},"This adds ",{"text":433,"type":332,"marks":434},"show",[435],{"type":363},{"text":437,"type":332}," and removes ",{"text":439,"type":332,"marks":440},"hidden",[441],{"type":363},{"text":443,"type":332}," on error, and toggles both back when the error clears.",{"type":339,"attrs":445,"content":446},{"level":341,"textAlign":59},[447],{"text":448,"type":332},"2. Error bar updating",{"type":327,"attrs":450,"content":451},{"textAlign":59},[452],{"text":453,"type":332},"Once field markup updates, Foxy updates a notifier bar at the top of the page — if one is present. The default checkout markup looks like this:",{"type":388,"attrs":455,"content":456},{"class":59},[457],{"text":458,"type":332},"\u003Csection data-fc-error-notifier>\n  \u003Ch3 data-fc-notifier-text>\u003C\u002Fh3>\n\u003C\u002Fsection>\n",{"type":351,"content":460},[461,472],{"type":354,"content":462},[463],{"type":327,"attrs":464,"content":465},{"textAlign":59},[466,470],{"text":467,"type":332,"marks":468},"data-fc-error-notifier",[469],{"type":363},{"text":471,"type":332}," — needs no value; tells Foxy to add all error messages to this element.",{"type":354,"content":473},[474],{"type":327,"attrs":475,"content":476},{"textAlign":59},[477,481,483,487],{"text":478,"type":332,"marks":479},"data-fc-notifier-text",[480],{"type":363},{"text":482,"type":332}," — optional; specifies which element receives the message text. By default the message is appended as a ",{"text":484,"type":332,"marks":485},"\u003Cp>",[486],{"type":363},{"text":488,"type":332},".",{"type":327,"attrs":490,"content":491},{"textAlign":59},[492,494,498,500,504],{"text":493,"type":332},"When a message is sent to the notifier, Foxy checks the length of ",{"text":495,"type":332,"marks":496},"FC.JSON.messages.errors",[497],{"type":363},{"text":499,"type":332}," and, if errors are present, updates the count and adds the ",{"text":501,"type":332,"marks":502},"alert alert-danger",[503],{"type":363},{"text":505,"type":332}," classes. Appearance and animation are controlled entirely through CSS.",{"type":339,"attrs":507,"content":508},{"level":341,"textAlign":59},[509],{"text":510,"type":332},"3. Error event firing",{"type":327,"attrs":512,"content":513},{"textAlign":59},[514,516,520,522,526,528,531],{"text":515,"type":332},"Foxy fires a ",{"text":517,"type":332,"marks":518},"notificationUpdate",[519],{"type":363},{"text":521,"type":332}," jQuery event on the ",{"text":523,"type":332,"marks":524},"\u003Cbody>",[525],{"type":363},{"text":527,"type":332}," tag every time a message is added to or removed from ",{"text":495,"type":332,"marks":529},[530],{"type":363},{"text":532,"type":332},". Listen for this event to build your own custom alerting, such as a toast notification library.",{"type":339,"attrs":534,"content":535},{"level":341,"textAlign":59},[536],{"text":537,"type":332},"Notes",{"type":351,"content":539},[540],{"type":354,"content":541},[542],{"type":327,"attrs":543,"content":544},{"textAlign":59},[545],{"text":546,"type":332},"These three parts are independent — use any combination that fits your customization.",{"id":59,"alt":59,"name":13,"focus":59,"title":59,"source":59,"filename":13,"copyright":59,"fieldtype":81,"meta_data":548},{},"How Foxy highlights invalid checkout fields, updates the error notification bar, and fires events you can hook into for custom error handling.","45e43cc3-8895-479a-9136-9c5cf9c978c5",[],"handle-checkout-errors-and-inline-validation","help\u002Farticles\u002Fhandle-checkout-errors-and-inline-validation",-4570,[],2659,"fa5e4059-45cf-4fdf-8f54-a043f0d6e86b",[],{"html":560,"sections":561,"segments":571},"\u003Cp>Customize how Foxy highlights fields, updates the error bar, and fires events when a checkout field has a validation error.\u003C\u002Fp>\u003Cp>Required fields generate an error if a customer tabs off of them without filling them in. Inline errors have three independent parts, so you can use one, two, or all three depending on what you need.\u003C\u002Fp>\u003Csection id=\"1-field-highlighting\" data-title=\"1. Field highlighting\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"1-field-highlighting\">1. Field highlighting\u003C\u002Fh2>\u003Cp>The specific field is highlighted by adding a class to an element, controlled through data attributes:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-class\u003C\u002Fcode> — required to use inline-error highlighting. Defines the class added to the element when it has an error. If this attribute isn’t found, Foxy falls back to re-rendering the block instead, which is more expensive from a browser performance perspective.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-for\u003C\u002Fcode> — needed only if you want the error class applied to an element other than the input itself, such as a parent element. Its value is the name of the input. Not required if \u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-class\u003C\u002Fcode> is on the input directly.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>\u003Cp>For example, on the shipping last name field’s parent element:\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>data-fc-error-class=&quot;invalid&quot; data-fc-error-for=&quot;shipping-last-name&quot;\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cp>When there’s an error, the \u003Ccode class=\"badge bg-soft-danger text-danger\">invalid\u003C\u002Fcode> class is added; once resolved, it’s removed the same way — Foxy checks the input for \u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-class\u003C\u002Fcode> and removes the class if present, then checks for a matching \u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-for\u003C\u002Fcode> and removes the class there too, if present.\u003C\u002Fp>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-class\u003C\u002Fcode> can also take a second, comma-separated class to toggle on success:\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\">div\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">class\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;alert alert-danger&quot;\u003C\u002Fspan>\n    \u003Cspan class=\"hljs-attr\">data-fc-error-for\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;cc_cvv2&quot;\u003C\u002Fspan>\n    \u003Cspan class=\"hljs-attr\">data-fc-error-class\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;show,hidden&quot;\u003C\u002Fspan>&gt;\u003C\u002Fspan>\u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">div\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cp>This adds \u003Ccode class=\"badge bg-soft-danger text-danger\">show\u003C\u002Fcode> and removes \u003Ccode class=\"badge bg-soft-danger text-danger\">hidden\u003C\u002Fcode> on error, and toggles both back when the error clears.\u003C\u002Fp>\u003C\u002Fsection>\u003Csection id=\"2-error-bar-updating\" data-title=\"2. Error bar updating\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"2-error-bar-updating\">2. Error bar updating\u003C\u002Fh2>\u003Cp>Once field markup updates, Foxy updates a notifier bar at the top of the page — if one is present. The default checkout markup looks like this:\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\">section\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">data-fc-error-notifier\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n  \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">h3\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">data-fc-notifier-text\u003C\u002Fspan>&gt;\u003C\u002Fspan>\u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">h3\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n\u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">section\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cul>\u003Cli>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-notifier\u003C\u002Fcode> — needs no value; tells Foxy to add all error messages to this element.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-notifier-text\u003C\u002Fcode> — optional; specifies which element receives the message text. By default the message is appended as a \u003Ccode class=\"badge bg-soft-danger text-danger\">&lt;p&gt;\u003C\u002Fcode>.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>\u003Cp>When a message is sent to the notifier, Foxy checks the length of \u003Ccode class=\"badge bg-soft-danger text-danger\">FC.JSON.messages.errors\u003C\u002Fcode> and, if errors are present, updates the count and adds the \u003Ccode class=\"badge bg-soft-danger text-danger\">alert alert-danger\u003C\u002Fcode> classes. Appearance and animation are controlled entirely through CSS.\u003C\u002Fp>\u003C\u002Fsection>\u003Csection id=\"3-error-event-firing\" data-title=\"3. Error event firing\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"3-error-event-firing\">3. Error event firing\u003C\u002Fh2>\u003Cp>Foxy fires a \u003Ccode class=\"badge bg-soft-danger text-danger\">notificationUpdate\u003C\u002Fcode> jQuery event on the \u003Ccode class=\"badge bg-soft-danger text-danger\">&lt;body&gt;\u003C\u002Fcode> tag every time a message is added to or removed from \u003Ccode class=\"badge bg-soft-danger text-danger\">FC.JSON.messages.errors\u003C\u002Fcode>. Listen for this event to build your own custom alerting, such as a toast notification library.\u003C\u002Fp>\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>These three parts are independent — use any combination that fits your customization.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>\u003C\u002Fsection>",[562,565,567,569],{"id":563,"title":344,"level":564},"1-field-highlighting","H2",{"id":566,"title":448,"level":564},"2-error-bar-updating",{"id":568,"title":510,"level":564},"3-error-event-firing",{"id":570,"title":537,"level":564},"notes",[572],{"type":573,"content":574},"html","\u003Cp>Customize how Foxy highlights fields, updates the error bar, and fires events when a checkout field has a validation error.\u003C\u002Fp>\u003Cp>Required fields generate an error if a customer tabs off of them without filling them in. Inline errors have three independent parts, so you can use one, two, or all three depending on what you need.\u003C\u002Fp>\u003Ch2>1. Field highlighting\u003C\u002Fh2>\u003Cp>The specific field is highlighted by adding a class to an element, controlled through data attributes:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-class\u003C\u002Fcode> — required to use inline-error highlighting. Defines the class added to the element when it has an error. If this attribute isn’t found, Foxy falls back to re-rendering the block instead, which is more expensive from a browser performance perspective.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-for\u003C\u002Fcode> — needed only if you want the error class applied to an element other than the input itself, such as a parent element. Its value is the name of the input. Not required if \u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-class\u003C\u002Fcode> is on the input directly.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>\u003Cp>For example, on the shipping last name field’s parent element:\u003C\u002Fp>\u003Cpre>\u003Ccode>data-fc-error-class=&quot;invalid&quot; data-fc-error-for=&quot;shipping-last-name&quot;\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>When there’s an error, the \u003Ccode class=\"badge bg-soft-danger text-danger\">invalid\u003C\u002Fcode> class is added; once resolved, it’s removed the same way — Foxy checks the input for \u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-class\u003C\u002Fcode> and removes the class if present, then checks for a matching \u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-for\u003C\u002Fcode> and removes the class there too, if present.\u003C\u002Fp>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-class\u003C\u002Fcode> can also take a second, comma-separated class to toggle on success:\u003C\u002Fp>\u003Cpre>\u003Ccode>&lt;div class=&quot;alert alert-danger&quot;\n    data-fc-error-for=&quot;cc_cvv2&quot;\n    data-fc-error-class=&quot;show,hidden&quot;&gt;&lt;\u002Fdiv&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>This adds \u003Ccode class=\"badge bg-soft-danger text-danger\">show\u003C\u002Fcode> and removes \u003Ccode class=\"badge bg-soft-danger text-danger\">hidden\u003C\u002Fcode> on error, and toggles both back when the error clears.\u003C\u002Fp>\u003Ch2>2. Error bar updating\u003C\u002Fh2>\u003Cp>Once field markup updates, Foxy updates a notifier bar at the top of the page — if one is present. The default checkout markup looks like this:\u003C\u002Fp>\u003Cpre>\u003Ccode>&lt;section data-fc-error-notifier&gt;\n  &lt;h3 data-fc-notifier-text&gt;&lt;\u002Fh3&gt;\n&lt;\u002Fsection&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cul>\u003Cli>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-error-notifier\u003C\u002Fcode> — needs no value; tells Foxy to add all error messages to this element.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">data-fc-notifier-text\u003C\u002Fcode> — optional; specifies which element receives the message text. By default the message is appended as a \u003Ccode class=\"badge bg-soft-danger text-danger\">&lt;p&gt;\u003C\u002Fcode>.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>\u003Cp>When a message is sent to the notifier, Foxy checks the length of \u003Ccode class=\"badge bg-soft-danger text-danger\">FC.JSON.messages.errors\u003C\u002Fcode> and, if errors are present, updates the count and adds the \u003Ccode class=\"badge bg-soft-danger text-danger\">alert alert-danger\u003C\u002Fcode> classes. Appearance and animation are controlled entirely through CSS.\u003C\u002Fp>\u003Ch2>3. Error event firing\u003C\u002Fh2>\u003Cp>Foxy fires a \u003Ccode class=\"badge bg-soft-danger text-danger\">notificationUpdate\u003C\u002Fcode> jQuery event on the \u003Ccode class=\"badge bg-soft-danger text-danger\">&lt;body&gt;\u003C\u002Fcode> tag every time a message is added to or removed from \u003Ccode class=\"badge bg-soft-danger text-danger\">FC.JSON.messages.errors\u003C\u002Fcode>. Listen for this event to build your own custom alerting, such as a toast notification library.\u003C\u002Fp>\u003Ch2>Notes\u003C\u002Fh2>\u003Cul>\u003Cli>\u003Cp>These three parts are independent — use any combination that fits your customization.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>",{"name":576,"created_at":577,"published_at":578,"updated_at":579,"id":580,"uuid":47,"content":581,"slug":48,"full_slug":48,"sort_by_date":59,"position":760,"tag_list":761,"is_startpage":24,"parent_id":59,"meta_data":59,"group_id":762,"first_published_at":763,"release_id":59,"lang":65,"path":59,"alternates":764,"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":582,"_uid":585,"title":586,"action":587,"fields":588,"method":736,"columns":737,"subtitle":751,"component":48,"button_text":757,"submit_title":758,"submit_subtitle":759},{"_uid":583,"title":576,"plugin":584,"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",[589,594,598,707,710,715,730],{"_uid":590,"name":591,"type":332,"label":592,"options":13,"required":33,"component":593,"placeholder":13},"9a70b226-2036-4f90-a052-b3efa61c5896","name","Name","form___field",{"_uid":595,"name":596,"type":596,"label":597,"options":13,"required":33,"component":593,"placeholder":13},"86ba35be-ff43-4a28-8633-14052a8f6622","email","Email Address",{"_uid":599,"name":600,"type":601,"label":602,"options":603,"required":33,"component":593,"conditions":604,"placeholder":13},"3f827475-492c-4f97-aa1e-2386ac263b6c","topic","select","Topic","Presales, Support, Billing, Partnerships, Order Enquiry, Other",[605,662,671,678,686,694,700],{"_uid":606,"equals":607,"fields":608,"component":661},"e21d97dd-e68e-4fa6-ba97-bc40f3041dde","Order Enquiry",[609],{"_uid":610,"body":611,"type":659,"title":13,"component":660},"b64992bc-6d53-48b8-b7a0-d81e5a062e50",{"type":324,"content":612},[613],{"type":327,"content":614},[615,617,625,627,629,630,635,637,642,650,652,657],{"text":616,"type":332},"We are ",{"text":618,"type":332,"marks":619},"Foxy.io",[620],{"type":621,"attrs":622},"link",{"href":623,"uuid":59,"anchor":59,"custom":624,"target":59,"linktype":31},"http:\u002F\u002FFoxy.io",{},{"text":626,"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":628},"hard_break",{"type":628},{"text":631,"type":332,"marks":632},"NOTE:",[633],{"type":634},"bold",{"text":636,"type":332}," We are ",{"text":638,"type":332,"marks":639},"not ",[640],{"type":641},"italic",{"text":643,"type":332,"marks":644},"Foxy.in",[645,649],{"type":621,"attrs":646},{"href":647,"uuid":59,"anchor":59,"custom":648,"target":59,"linktype":31},"http:\u002F\u002FFoxy.in",{},{"type":641},{"text":651,"type":332},". We are not in any way affiliated with ",{"text":643,"type":332,"marks":653},[654],{"type":621,"attrs":655},{"href":647,"uuid":59,"anchor":59,"custom":656,"target":59,"linktype":31},{},{"text":658,"type":332},", and cannot help in any way with your order from that website.","danger","global___alert","form___condition",{"_uid":663,"equals":664,"fields":665,"component":661},"8765c3e1-25cf-44aa-b8ea-fc6094acf9c3","Presales",[666],{"_uid":667,"name":668,"type":439,"label":13,"options":13,"required":24,"component":593,"conditions":669,"placeholder":13,"default_value":670},"cf464f8e-d643-4f6e-af29-d3abffaf7380","department_email_address",[],"hello@foxy.io",{"_uid":672,"equals":208,"fields":673,"component":661},"4007b6d8-77e5-421d-bd1e-6f336dd853fb",[674],{"_uid":675,"name":668,"type":439,"label":13,"options":13,"required":24,"component":593,"conditions":676,"placeholder":13,"default_value":677},"7b4c6aa5-a68c-45e0-9ce1-0a36af10c0c2",[],"help@foxy.io",{"_uid":679,"equals":680,"fields":681,"component":661},"1dbb8f11-613d-43cd-9e09-1b94f6e19219","Billing",[682],{"_uid":683,"name":668,"type":439,"label":13,"options":13,"required":24,"component":593,"conditions":684,"placeholder":13,"default_value":685},"a0ac0d1b-bc4f-4a6c-a682-581d450b0b73",[],"help+billing@foxy.io",{"_uid":687,"equals":688,"fields":689,"component":661},"a0a53a50-7172-4a29-ba58-181e38874e12","Partnerships",[690],{"_uid":691,"name":668,"type":439,"label":13,"options":13,"required":24,"component":593,"conditions":692,"placeholder":13,"default_value":693},"7aa011d9-f374-4aed-b5a5-929b54aaf152",[],"partners@foxy.io",{"_uid":695,"equals":607,"fields":696,"component":661},"a4cd431f-25d5-41c7-bfdc-02c908c8fb47",[697],{"_uid":698,"name":668,"type":439,"label":13,"options":13,"required":24,"component":593,"conditions":699,"placeholder":13,"default_value":670},"f5d52168-d6ae-451b-94ee-2ced1cbd28ad",[],{"_uid":701,"equals":702,"fields":703,"component":661},"25aba1ed-eb41-4bbc-aa89-f7a7167ea86e","Other",[704],{"_uid":705,"name":668,"type":439,"label":13,"options":13,"required":24,"component":593,"conditions":706,"placeholder":13,"default_value":670},"f40dfaef-c203-4b71-bf4e-e1b43cef192b",[],{"_uid":708,"component":709},"e9c53a05-f40a-4510-aaf8-bc072a235a0c","form___subject",{"_uid":711,"name":712,"type":713,"label":714,"options":13,"required":33,"component":593,"placeholder":13},"a4c4d385-fff4-4978-99fb-b68cfea623d6","message","textarea","Message",{"_uid":716,"name":717,"type":601,"label":718,"options":719,"required":33,"component":593,"conditions":720,"placeholder":13},"8a3c9f85-f438-427d-9c7a-d7b295a14b5b","existing_user","Are you an existing user?","No, Yes",[721],{"_uid":722,"equals":723,"fields":724,"component":661},"115933d6-262a-4b59-8fa8-579c5ad73de1","Yes",[725],{"_uid":726,"name":727,"type":332,"label":728,"options":13,"required":33,"component":593,"conditions":729,"placeholder":13},"44b6ff23-98f0-4e95-b7f5-c23e06415c2d","subdomain","Store Subdomain",[],{"_uid":731,"name":732,"type":601,"label":733,"options":734,"required":33,"component":593,"conditions":735,"placeholder":13},"922a5cef-3af2-4113-8855-36c7910e3ee3","user_type","What type of user are you?","Developer, Designer, Merchant",[],"POST",[738],{"_uid":739,"text":740,"title":749,"component":750},"7323b90d-a93a-4bf1-baa9-20d0b7ead61b",{"type":324,"content":741},[742],{"type":327,"content":743},[744,746,747],{"text":745,"type":332},"855.369.9227",{"type":628},{"text":748,"type":332},"9:30am-6pm Central M-F","Pre-sales, Sales, & Partnerships","contact___footer_column",{"type":324,"content":752},[753],{"type":327,"content":754},[755],{"text":756,"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,766,793],{"name":767,"created_at":768,"published_at":769,"updated_at":770,"id":771,"uuid":772,"content":773,"slug":787,"full_slug":788,"sort_by_date":59,"position":789,"tag_list":790,"is_startpage":24,"parent_id":310,"meta_data":59,"group_id":791,"first_published_at":769,"release_id":59,"lang":65,"path":59,"alternates":792,"default_full_slug":59,"translated_slugs":59},"Templates","2023-01-19T16:30:39.158Z","2023-01-19T17:25:34.000Z","2023-01-19T17:25:34.017Z",28248,"d584ea62-7dcd-4152-be82-6ee0fdeb153c",{"_uid":774,"icon":775,"name":767,"guides":776,"summary":777,"category":13,"component":297,"blog_posts":778,"content_hub":24,"icon_custom":779,"case_studies":780,"faq_sections":781,"help_articles":782,"featured_guides":783,"mailbox_category":13,"featured_articles":784,"featured_blog_posts":785,"featured_case_studies":786},"a86c693a-d801-4062-b52b-47c4d9e82416","fa-pencil-paintbrush",[],"Customize Foxy related templates.",[],{"id":59,"alt":59,"name":13,"focus":59,"title":59,"filename":13,"copyright":59,"fieldtype":81},[],[],[],[],[],[],[],"templates","help\u002Fcategories\u002Ftemplates",70,[],"4e91bfd5-f795-474d-874f-ae78f4631d0c",[],{"name":794,"created_at":795,"published_at":796,"updated_at":797,"id":798,"uuid":550,"content":799,"slug":812,"full_slug":813,"sort_by_date":59,"position":814,"tag_list":815,"is_startpage":24,"parent_id":310,"meta_data":59,"group_id":816,"first_published_at":796,"release_id":59,"lang":65,"path":59,"alternates":817,"default_full_slug":59,"translated_slugs":59},"Advanced Template Customization","2026-07-23T03:33:42.362Z","2026-07-23T03:34:37.518Z","2026-07-23T03:34:37.530Z",201064539644123,{"_uid":800,"icon":13,"name":794,"type":801,"pinned":24,"summary":802,"category":772,"component":297,"blog_posts":803,"icon_custom":804,"case_studies":806,"faq_sections":807,"featured_guides":808,"mailbox_category":13,"featured_articles":809,"featured_blog_posts":810,"featured_case_studies":811},"0990cacf-3028-4cdb-838c-4a85d4fb99d3","simple","Host your own template design or edit the raw Twig markup for full control over the checkout experience.",[],{"id":59,"alt":59,"name":13,"focus":59,"title":59,"source":59,"filename":13,"copyright":59,"fieldtype":81,"meta_data":805},{},[],[],[],[],[],[],"advanced-template-customization","help\u002Fcategories\u002Fadvanced-template-customization",-870,[],"1e42cb9c-7eba-43cb-a2eb-2fa2d3307bb1",[],{},1784780319594]