[{"data":1,"prerenderedAt":1053},["ShallowReactive",2],{"docs-navigation-en":3,"docs-\u002Fen\u002Fdocs\u002Fdevelopers\u002Ftracking":66,"docs-surround-\u002Fen\u002Fdocs\u002Fdevelopers\u002Ftracking":1048},[4],{"title":5,"path":6,"stem":7,"children":8,"page":65},"En","\u002Fen","en",[9],{"title":10,"path":11,"stem":12,"children":13,"page":65},"Docs","\u002Fen\u002Fdocs","en\u002Fdocs",[14,22,41],{"title":15,"path":16,"stem":17,"children":18,"icon":21},"Getting started","\u002Fen\u002Fdocs\u002Fgetting-started","en\u002Fdocs\u002F1.getting-started\u002F1.index",[19],{"title":20,"path":16,"stem":17},"What Flowfy is","i-lucide-rocket",{"title":23,"path":24,"stem":25,"children":26,"icon":40},"Destinations","\u002Fen\u002Fdocs\u002Fdestinations","en\u002Fdocs\u002F2.destinations\u002F1.index",[27,28,32,36],{"title":23,"path":24,"stem":25},{"title":29,"path":30,"stem":31},"Meta","\u002Fen\u002Fdocs\u002Fdestinations\u002Fmeta","en\u002Fdocs\u002F2.destinations\u002F2.meta",{"title":33,"path":34,"stem":35},"TikTok","\u002Fen\u002Fdocs\u002Fdestinations\u002Ftiktok","en\u002Fdocs\u002F2.destinations\u002F3.tiktok",{"title":37,"path":38,"stem":39},"Snapchat","\u002Fen\u002Fdocs\u002Fdestinations\u002Fsnapchat","en\u002Fdocs\u002F2.destinations\u002F4.snapchat","i-lucide-share-2",{"title":42,"path":43,"stem":44,"children":45,"icon":64},"For developers","\u002Fen\u002Fdocs\u002Fdevelopers","en\u002Fdocs\u002F9.developers\u002F1.index",[46,48,52,56,60],{"title":47,"path":43,"stem":44},"Developer overview",{"title":49,"path":50,"stem":51},"Install the SDK","\u002Fen\u002Fdocs\u002Fdevelopers\u002Finstall","en\u002Fdocs\u002F9.developers\u002F2.install",{"title":53,"path":54,"stem":55},"Tracking","\u002Fen\u002Fdocs\u002Fdevelopers\u002Ftracking","en\u002Fdocs\u002F9.developers\u002F3.tracking",{"title":57,"path":58,"stem":59},"Event reference","\u002Fen\u002Fdocs\u002Fdevelopers\u002Fevents","en\u002Fdocs\u002F9.developers\u002F4.events",{"title":61,"path":62,"stem":63},"HTTP API","\u002Fen\u002Fdocs\u002Fdevelopers\u002Fhttp-api","en\u002Fdocs\u002F9.developers\u002F5.http-api","i-lucide-code",false,{"id":67,"title":53,"audience":68,"body":69,"description":1042,"extension":1043,"meta":1044,"navigation":1045,"path":54,"seo":1046,"stem":55,"__hash__":1047},"docs_en\u002Fen\u002Fdocs\u002F9.developers\u002F3.tracking.md","developer",{"type":70,"value":71,"toc":1033},"minimark",[72,85,163,166,200,327,338,345,356,358,379,475,478,484,493,552,554,647,650,733,736,740,840,851,855,858,907,920,924,927,983,998,1002,1009,1026,1029],[73,74,75,76,80,81,84],"p",{},"Six methods cover everything. ",[77,78,79],"code",{},"track"," and ",[77,82,83],{},"identify"," are the two you will actually use.",[86,87,88,101],"table",{},[89,90,91],"thead",{},[92,93,94,98],"tr",{},[95,96,97],"th",{},"Method",[95,99,100],{},"Answers",[102,103,104,114,123,133,143,153],"tbody",{},[92,105,106,111],{},[107,108,109],"td",{},[77,110,79],{},[107,112,113],{},"What happened?",[92,115,116,120],{},[107,117,118],{},[77,119,83],{},[107,121,122],{},"Who is this?",[92,124,125,130],{},[107,126,127],{},[77,128,129],{},"page",[107,131,132],{},"Which page are they on?",[92,134,135,140],{},[107,136,137],{},[77,138,139],{},"group",[107,141,142],{},"Which company do they belong to?",[92,144,145,150],{},[107,146,147],{},[77,148,149],{},"alias",[107,151,152],{},"These two IDs are the same person",[92,154,155,160],{},[107,156,157],{},[77,158,159],{},"reset",[107,161,162],{},"They logged out",[164,165,79],"h2",{"id":79},[167,168,173],"pre",{"className":169,"code":170,"language":171,"meta":172,"style":172},"language-js shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","flowfyanalytics.track(eventName, properties)\n","js","",[77,174,175],{"__ignoreMap":172},[176,177,180,184,188,191,194,197],"span",{"class":178,"line":179},"line",1,[176,181,183],{"class":182},"sTEyZ","flowfyanalytics",[176,185,187],{"class":186},"sMK4o",".",[176,189,79],{"class":190},"s2Zo4",[176,192,193],{"class":182},"(eventName",[176,195,196],{"class":186},",",[176,198,199],{"class":182}," properties)\n",[167,201,203],{"className":169,"code":202,"language":171,"meta":172,"style":172},"flowfyanalytics.track(\"Product Viewed\", {\n  product_id: \"P-4471\",\n  name: \"Wireless Headphones\",\n  price: 199.99,\n  currency: \"SAR\",\n  category: \"Electronics\"\n});\n",[77,204,205,230,251,268,282,299,315],{"__ignoreMap":172},[176,206,207,209,211,213,216,219,223,225,227],{"class":178,"line":179},[176,208,183],{"class":182},[176,210,187],{"class":186},[176,212,79],{"class":190},[176,214,215],{"class":182},"(",[176,217,218],{"class":186},"\"",[176,220,222],{"class":221},"sfazB","Product Viewed",[176,224,218],{"class":186},[176,226,196],{"class":186},[176,228,229],{"class":186}," {\n",[176,231,233,237,240,243,246,248],{"class":178,"line":232},2,[176,234,236],{"class":235},"swJcz","  product_id",[176,238,239],{"class":186},":",[176,241,242],{"class":186}," \"",[176,244,245],{"class":221},"P-4471",[176,247,218],{"class":186},[176,249,250],{"class":186},",\n",[176,252,254,257,259,261,264,266],{"class":178,"line":253},3,[176,255,256],{"class":235},"  name",[176,258,239],{"class":186},[176,260,242],{"class":186},[176,262,263],{"class":221},"Wireless Headphones",[176,265,218],{"class":186},[176,267,250],{"class":186},[176,269,271,274,276,280],{"class":178,"line":270},4,[176,272,273],{"class":235},"  price",[176,275,239],{"class":186},[176,277,279],{"class":278},"sbssI"," 199.99",[176,281,250],{"class":186},[176,283,285,288,290,292,295,297],{"class":178,"line":284},5,[176,286,287],{"class":235},"  currency",[176,289,239],{"class":186},[176,291,242],{"class":186},[176,293,294],{"class":221},"SAR",[176,296,218],{"class":186},[176,298,250],{"class":186},[176,300,302,305,307,309,312],{"class":178,"line":301},6,[176,303,304],{"class":235},"  category",[176,306,239],{"class":186},[176,308,242],{"class":186},[176,310,311],{"class":221},"Electronics",[176,313,314],{"class":186},"\"\n",[176,316,318,321,324],{"class":178,"line":317},7,[176,319,320],{"class":186},"}",[176,322,323],{"class":182},")",[176,325,326],{"class":186},";\n",[73,328,329,330,333,334,187],{},"The event name is matched against a fixed list. ",[77,331,332],{},"Order Completed"," becomes a purchase on Meta, TikTok and Snapchat; a name Flowfy does not recognise is still stored, but no advertising platform will do anything with it. Use the ",[335,336,337],"a",{"href":58},"event reference",[73,339,340,341,344],{},"Names are matched without regard to case, so ",[77,342,343],{},"order completed"," still counts as a purchase — but they are stored exactly as you send them, and Meta matches its own standard events case-sensitively. Send them as written in the reference.",[73,346,347,348,351,352,355],{},"Property names are snake_case. Sending ",[77,349,350],{},"productId"," instead of ",[77,353,354],{},"product_id"," will not raise an error; the property is simply never read.",[164,357,83],{"id":83},[167,359,361],{"className":169,"code":360,"language":171,"meta":172,"style":172},"flowfyanalytics.identify(userId, traits)\n",[77,362,363],{"__ignoreMap":172},[176,364,365,367,369,371,374,376],{"class":178,"line":179},[176,366,183],{"class":182},[176,368,187],{"class":186},[176,370,83],{"class":190},[176,372,373],{"class":182},"(userId",[176,375,196],{"class":186},[176,377,378],{"class":182}," traits)\n",[167,380,382],{"className":169,"code":381,"language":171,"meta":172,"style":172},"flowfyanalytics.identify(\"customer_9931\", {\n  email: \"sara@example.com\",\n  phone: \"+966500000000\",\n  first_name: \"Sara\",\n  last_name: \"Al-Otaibi\"\n});\n",[77,383,384,405,421,437,453,467],{"__ignoreMap":172},[176,385,386,388,390,392,394,396,399,401,403],{"class":178,"line":179},[176,387,183],{"class":182},[176,389,187],{"class":186},[176,391,83],{"class":190},[176,393,215],{"class":182},[176,395,218],{"class":186},[176,397,398],{"class":221},"customer_9931",[176,400,218],{"class":186},[176,402,196],{"class":186},[176,404,229],{"class":186},[176,406,407,410,412,414,417,419],{"class":178,"line":232},[176,408,409],{"class":235},"  email",[176,411,239],{"class":186},[176,413,242],{"class":186},[176,415,416],{"class":221},"sara@example.com",[176,418,218],{"class":186},[176,420,250],{"class":186},[176,422,423,426,428,430,433,435],{"class":178,"line":253},[176,424,425],{"class":235},"  phone",[176,427,239],{"class":186},[176,429,242],{"class":186},[176,431,432],{"class":221},"+966500000000",[176,434,218],{"class":186},[176,436,250],{"class":186},[176,438,439,442,444,446,449,451],{"class":178,"line":270},[176,440,441],{"class":235},"  first_name",[176,443,239],{"class":186},[176,445,242],{"class":186},[176,447,448],{"class":221},"Sara",[176,450,218],{"class":186},[176,452,250],{"class":186},[176,454,455,458,460,462,465],{"class":178,"line":284},[176,456,457],{"class":235},"  last_name",[176,459,239],{"class":186},[176,461,242],{"class":186},[176,463,464],{"class":221},"Al-Otaibi",[176,466,314],{"class":186},[176,468,469,471,473],{"class":178,"line":301},[176,470,320],{"class":186},[176,472,323],{"class":182},[176,474,326],{"class":186},[73,476,477],{},"Call it when someone logs in, registers or updates their details — and on every page load where you already know who they are, since the SDK does not carry an identity across sessions on its own.",[73,479,480,481,483],{},"Until you call it, the shopper is tracked under a generated anonymous ID. ",[77,482,83],{}," links the events that came before it to the person, which is how someone who browsed on a phone and bought on a desktop is counted once instead of twice.",[73,485,486,80,489,492],{},[77,487,488],{},"email",[77,490,491],{},"phone"," matter more than the rest: Meta, TikTok and Snapchat use them to match a conversion back to an ad view, and they are hashed before they leave Flowfy.",[73,494,495,496,498,499,498,501,498,504,498,507,498,510,498,513,498,516,498,519,498,522,498,525,498,528,531,532,535,536,498,539,498,542,498,545,80,548,551],{},"Common traits are ",[77,497,488],{},", ",[77,500,491],{},[77,502,503],{},"first_name",[77,505,506],{},"last_name",[77,508,509],{},"name",[77,511,512],{},"username",[77,514,515],{},"age",[77,517,518],{},"birthday",[77,520,521],{},"gender",[77,523,524],{},"avatar",[77,526,527],{},"title",[77,529,530],{},"created_at",", and ",[77,533,534],{},"address"," as a nested object with ",[77,537,538],{},"street_address",[77,540,541],{},"city",[77,543,544],{},"state",[77,546,547],{},"postal_code",[77,549,550],{},"country",". Anything else you add is kept as-is.",[164,553,129],{"id":129},[167,555,557],{"className":169,"code":556,"language":171,"meta":172,"style":172},"flowfyanalytics.page();\nflowfyanalytics.page(\"Catalogue\", \"Headphones\");\nflowfyanalytics.page({ path: \"\u002Fproducts\u002Fheadphones\", title: \"Headphones\" });\n",[77,558,559,572,602],{"__ignoreMap":172},[176,560,561,563,565,567,570],{"class":178,"line":179},[176,562,183],{"class":182},[176,564,187],{"class":186},[176,566,129],{"class":190},[176,568,569],{"class":182},"()",[176,571,326],{"class":186},[176,573,574,576,578,580,582,584,587,589,591,593,596,598,600],{"class":178,"line":232},[176,575,183],{"class":182},[176,577,187],{"class":186},[176,579,129],{"class":190},[176,581,215],{"class":182},[176,583,218],{"class":186},[176,585,586],{"class":221},"Catalogue",[176,588,218],{"class":186},[176,590,196],{"class":186},[176,592,242],{"class":186},[176,594,595],{"class":221},"Headphones",[176,597,218],{"class":186},[176,599,323],{"class":182},[176,601,326],{"class":186},[176,603,604,606,608,610,612,615,618,620,622,625,627,629,632,634,636,638,640,643,645],{"class":178,"line":253},[176,605,183],{"class":182},[176,607,187],{"class":186},[176,609,129],{"class":190},[176,611,215],{"class":182},[176,613,614],{"class":186},"{",[176,616,617],{"class":235}," path",[176,619,239],{"class":186},[176,621,242],{"class":186},[176,623,624],{"class":221},"\u002Fproducts\u002Fheadphones",[176,626,218],{"class":186},[176,628,196],{"class":186},[176,630,631],{"class":235}," title",[176,633,239],{"class":186},[176,635,242],{"class":186},[176,637,595],{"class":221},[176,639,218],{"class":186},[176,641,642],{"class":186}," }",[176,644,323],{"class":182},[176,646,326],{"class":186},[73,648,649],{},"Call it once per page view. In a single-page app the URL changes without a reload, so call it yourself on every route change:",[167,651,653],{"className":169,"code":652,"language":171,"meta":172,"style":172},"router.afterEach((to) => {\n  flowfyanalytics.page({ path: to.fullPath, title: document.title });\n});\n",[77,654,655,681,725],{"__ignoreMap":172},[176,656,657,660,662,665,667,669,673,675,679],{"class":178,"line":179},[176,658,659],{"class":182},"router",[176,661,187],{"class":186},[176,663,664],{"class":190},"afterEach",[176,666,215],{"class":182},[176,668,215],{"class":186},[176,670,672],{"class":671},"sHdIc","to",[176,674,323],{"class":186},[176,676,678],{"class":677},"spNyl"," =>",[176,680,229],{"class":186},[176,682,683,686,688,690,692,694,696,698,701,703,706,708,710,712,715,717,719,721,723],{"class":178,"line":232},[176,684,685],{"class":182},"  flowfyanalytics",[176,687,187],{"class":186},[176,689,129],{"class":190},[176,691,215],{"class":235},[176,693,614],{"class":186},[176,695,617],{"class":235},[176,697,239],{"class":186},[176,699,700],{"class":182}," to",[176,702,187],{"class":186},[176,704,705],{"class":182},"fullPath",[176,707,196],{"class":186},[176,709,631],{"class":235},[176,711,239],{"class":186},[176,713,714],{"class":182}," document",[176,716,187],{"class":186},[176,718,527],{"class":182},[176,720,642],{"class":186},[176,722,323],{"class":235},[176,724,326],{"class":186},[176,726,727,729,731],{"class":178,"line":253},[176,728,320],{"class":186},[176,730,323],{"class":182},[176,732,326],{"class":186},[73,734,735],{},"The URL, path, title, referrer and any UTM parameters are filled in for you.",[164,737,739],{"id":738},"group-alias-reset","group, alias, reset",[167,741,743],{"className":169,"code":742,"language":171,"meta":172,"style":172},"flowfyanalytics.group(\"company_88\", { name: \"Alpha Trading\", plan: \"wholesale\" });\nflowfyanalytics.alias(\"customer_9931\", \"temp_44f0\");\nflowfyanalytics.reset();\n",[77,744,745,799,828],{"__ignoreMap":172},[176,746,747,749,751,753,755,757,760,762,764,767,770,772,774,777,779,781,784,786,788,791,793,795,797],{"class":178,"line":179},[176,748,183],{"class":182},[176,750,187],{"class":186},[176,752,139],{"class":190},[176,754,215],{"class":182},[176,756,218],{"class":186},[176,758,759],{"class":221},"company_88",[176,761,218],{"class":186},[176,763,196],{"class":186},[176,765,766],{"class":186}," {",[176,768,769],{"class":235}," name",[176,771,239],{"class":186},[176,773,242],{"class":186},[176,775,776],{"class":221},"Alpha Trading",[176,778,218],{"class":186},[176,780,196],{"class":186},[176,782,783],{"class":235}," plan",[176,785,239],{"class":186},[176,787,242],{"class":186},[176,789,790],{"class":221},"wholesale",[176,792,218],{"class":186},[176,794,642],{"class":186},[176,796,323],{"class":182},[176,798,326],{"class":186},[176,800,801,803,805,807,809,811,813,815,817,819,822,824,826],{"class":178,"line":232},[176,802,183],{"class":182},[176,804,187],{"class":186},[176,806,149],{"class":190},[176,808,215],{"class":182},[176,810,218],{"class":186},[176,812,398],{"class":221},[176,814,218],{"class":186},[176,816,196],{"class":186},[176,818,242],{"class":186},[176,820,821],{"class":221},"temp_44f0",[176,823,218],{"class":186},[176,825,323],{"class":182},[176,827,326],{"class":186},[176,829,830,832,834,836,838],{"class":178,"line":253},[176,831,183],{"class":182},[176,833,187],{"class":186},[176,835,159],{"class":190},[176,837,569],{"class":182},[176,839,326],{"class":186},[73,841,842,844,845,847,848,850],{},[77,843,139],{}," attaches a shopper to a company, which is useful for wholesale. ",[77,846,149],{}," merges two IDs belonging to the same person. ",[77,849,159],{}," clears the stored identity and issues a fresh anonymous ID — call it on logout, or the next shopper on a shared device inherits the previous one.",[164,852,854],{"id":853},"what-the-sdk-collects-for-you","What the SDK collects for you",[73,856,857],{},"None of this needs to be sent. It is attached to every event automatically:",[859,860,861,869,890,896,901],"ul",{},[862,863,864,868],"li",{},[865,866,867],"strong",{},"Page"," — URL, path, title, referrer, referring domain, search string, and the first referrer of the session",[862,870,871,874,875,498,878,498,881,498,884,498,887],{},[865,872,873],{},"Campaign"," — ",[77,876,877],{},"utm_source",[77,879,880],{},"utm_medium",[77,882,883],{},"utm_campaign",[77,885,886],{},"utm_term",[77,888,889],{},"utm_content",[862,891,892,895],{},[865,893,894],{},"Screen"," — width, height, pixel density, inner width and height",[862,897,898],{},[865,899,900],{},"Locale and timezone",[862,902,903,906],{},[865,904,905],{},"User agent",", and the IP address, which Flowfy resolves to a country",[73,908,909,910,498,913,498,916,919],{},"Click IDs from the ad platforms — ",[77,911,912],{},"fbclid",[77,914,915],{},"ttclid",[77,917,918],{},"sc_click_id"," and the cookies that follow them — are read from the URL too. They are what connects an order back to the ad that produced it, so do not strip those parameters when your router tidies up URLs.",[164,921,923],{"id":922},"waiting-for-the-sdk","Waiting for the SDK",[73,925,926],{},"Queued calls replay in order once the SDK loads, so you rarely need this. When you want to read something back:",[167,928,930],{"className":169,"code":929,"language":171,"meta":172,"style":172},"flowfyanalytics.ready(function () {\n  console.log(flowfyanalytics.getAnonymousId());\n});\n",[77,931,932,951,975],{"__ignoreMap":172},[176,933,934,936,938,941,943,946,949],{"class":178,"line":179},[176,935,183],{"class":182},[176,937,187],{"class":186},[176,939,940],{"class":190},"ready",[176,942,215],{"class":182},[176,944,945],{"class":677},"function",[176,947,948],{"class":186}," ()",[176,950,229],{"class":186},[176,952,953,956,958,961,963,965,967,970,973],{"class":178,"line":232},[176,954,955],{"class":182},"  console",[176,957,187],{"class":186},[176,959,960],{"class":190},"log",[176,962,215],{"class":235},[176,964,183],{"class":182},[176,966,187],{"class":186},[176,968,969],{"class":190},"getAnonymousId",[176,971,972],{"class":235},"())",[176,974,326],{"class":186},[176,976,977,979,981],{"class":178,"line":253},[176,978,320],{"class":186},[176,980,323],{"class":182},[176,982,326],{"class":186},[73,984,985,498,988,498,991,80,994,997],{},[77,986,987],{},"getUserId()",[77,989,990],{},"getUserTraits()",[77,992,993],{},"getSessionId()",[77,995,996],{},"getGroupId()"," are available on the same object.",[164,999,1001],{"id":1000},"consent","Consent",[73,1003,1004,1005,1008],{},"If you gate tracking behind a cookie banner, load the SDK with pre-consent enabled and call ",[77,1006,1007],{},"consent()"," once the shopper accepts:",[167,1010,1012],{"className":169,"code":1011,"language":171,"meta":172,"style":172},"flowfyanalytics.consent();\n",[77,1013,1014],{"__ignoreMap":172},[176,1015,1016,1018,1020,1022,1024],{"class":178,"line":179},[176,1017,183],{"class":182},[176,1019,187],{"class":186},[176,1021,1000],{"class":190},[176,1023,569],{"class":182},[176,1025,326],{"class":186},[73,1027,1028],{},"Until then events are held rather than sent. With no consent setup configured, the SDK tracks immediately.",[1030,1031,1032],"style",{},"html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":172,"searchDepth":232,"depth":232,"links":1034},[1035,1036,1037,1038,1039,1040,1041],{"id":79,"depth":232,"text":79},{"id":83,"depth":232,"text":83},{"id":129,"depth":232,"text":129},{"id":738,"depth":232,"text":739},{"id":853,"depth":232,"text":854},{"id":922,"depth":232,"text":923},{"id":1000,"depth":232,"text":1001},"The SDK methods for recording what a shopper does and who they are.","md",{},true,{"title":53,"description":1042},"BnGOC9oFigjqhMhpIyGdQ0-FhlSq9oGbokeZ2m5Fon0",[1049,1051],{"title":49,"path":50,"stem":51,"description":1050,"children":-1},"Add the Flowfy tracking script to a custom storefront and point it at your source.",{"title":57,"path":58,"stem":59,"description":1052,"children":-1},"The thirty events Flowfy understands, and the properties each one needs.",1787611841787]