{"id":862,"date":"2025-08-11T14:31:45","date_gmt":"2025-08-11T14:31:45","guid":{"rendered":"https:\/\/rs.quarticon.com\/instrukcja-wdrozenia-samodzielnego-backend-rest-api\/"},"modified":"2025-10-09T13:26:48","modified_gmt":"2025-10-09T13:26:48","slug":"instrukcja-wdrozenia-samodzielnego-backend-rest-api","status":"publish","type":"post","link":"https:\/\/help.quarticon.com\/pl\/instrukcja-wdrozenia-samodzielnego-backend-rest-api\/","title":{"rendered":"Instrukcja wdro\u017cenia samodzielnego: Backend &#8211; REST API"},"content":{"rendered":"<div class=\"jsx-ef86202475c6562f \">\n<div class=\"jsx-ef86202475c6562f article_body\">\n<article class=\"jsx-ef86202475c6562f \">\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Rozwi\u0105zanie to podobnie jak wdro\u017cenie po NPM (<a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/6264987-wdrozenie-samodzielne-frontend-pwa-npm-api\">https:\/\/howto.quarticon.com\/pl\/articles\/6264987-wdrozenie-samodzielne-frontend-pwa-npm-api<\/a> ) w ca\u0142o\u015bci odbywa si\u0119 po stronie klienta. R\u00f3\u017cnica jest taka, \u017ce wdro\u017cenie po API z racji niejawnych kluczy dost\u0119powych musi odby\u0107 si\u0119 po stronie backendu.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Szczeg\u00f3\u0142owe informacje o API, znajdziesz w dokumentacji:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>PL: <a href=\"https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/<\/a><\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>EN: <a href=\"https:\/\/docs.quarticon.com\/storeapi\/documentation\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.quarticon.com\/storeapi\/documentation\/<\/a><\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-horizontal-rule\">\n<hr \/>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>Spis tre\u015bci:<\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_c5caf1f356\">Czego potrzebujesz przed rozpocz\u0119ciem wdro\u017cenia<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_8421b25b58\">G\u0142\u00f3wne za\u0142o\u017cenia wymagane do prawid\u0142owego dzia\u0142ania Systemu Rekomendacji Quarticon<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_788779ccb3\">Przyk\u0142adowa \u015bcie\u017cka zachowania u\u017cytkownika na stronie<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_671f9725ed\">Proces implementacji krok po kroku<\/a><\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_858e660b1f\">1 .Przygotuj ramki rekomendacyjne<\/a><\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_cb10b096fa\">Wska\u017c miejsce dla rekomendacji w sklepie<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_b6d8b419dc\">Wyb\u00f3r strategii rekomendacji<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_89954c05f8\">Kreator drag&amp;drop<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_6b7f535325\">Podsumowanie<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_668c2c77eb\">2. Zaimplementuj wysy\u0142anie Informacji o odwiedzinach karty produktu<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_f852de5482\">3. Zaimplementuj wysy\u0142anie Informacji o zakupach<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_214fdf734e\">4. Zaimplementuj ramki rekomendacji na swojej stronie<\/a><\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_20501a5f1d\">Request po rekomendacje<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_f18202edaf\">Odpowied\u017a z API<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_807ece4cdb\">5. Zaimplementuj ramki rekomendacji na pozosta\u0142ych stronach<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_8841fb6879\">6. Identyfikacja transakcji z rekomendacji<\/a><\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_0eb5912837\">Wdro\u017cenie poprzez przeklik przez c.php<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_f741f75fbb\">Wdro\u017cenie poprzez eventClick<\/a><\/b><\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"intercom-interblocks-horizontal-rule\">\n<hr \/>\n<\/div>\n<div class=\"intercom-interblocks-heading intercom-interblocks-align-left\">\n<h1 id=\"h_c5caf1f356\">Czego potrzebujesz przed rozpocz\u0119ciem wdro\u017cenia<\/h1>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Aby m\u00f3c rozpoczac wdro\u017cenie potrzebujesz <b><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/2647112-chce-skorzystac-z-waszej-uslugi-i-utworzyc-w-moim-sklepie-ramki-rekomendacji-do-kogo-mam-sie-zglosic\">przygotowanego konta w systemie QuarticOn<\/a><\/b>.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Konto musi posiada\u0107:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>ustawiony i sprawdzony katalog produktowy<\/b> (wi\u0119cej o przygotowaniu katalogu znajdziesz <a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/2536115-katalog-w-formie-pliku-xml\">tutaj<\/a>)<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Podczas wgrywania katalogu ch\u0119tnie wspomo\u017c\u0119 Ci\u0119 nasz zesp\u00f3\u0142. Plik XML, najlepiej w formie Google Merchant, mo\u017ce zawiera\u0107 dodatkowe dane, np. oceny produkt\u00f3w, ranking, dodatkowe id wykorzystywane do dodawania do koszyka, dlatego nasz zesp\u00f3\u0142 wspomo\u017ce Ci\u0119 w przekazaniu tych warto\u015bci do naszego systemu, aby potem mo\u017cna by\u0142o je wykorzysta\u0107 podczas generowania rekomendacji.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Instrukcj\u0119 stworzenia feeda w formacie znajdziesz w artykule <a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4126622-jak-wygenerowac-feed-produktowy-dla-google-shopping\">Jak wygenerowa\u0107 feed produktowy dla Google Shopping?<\/a>, instrukcj\u0119 implementacji katalogu produktowego znajdziesz za\u015b w artykule <a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/2536115-implementacja-feeda-xml-do-katalogu-w-panelu-quarticon\">Implementacja feeda XML do katalogu w panelu QuarticOn<\/a>.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>przygotowane ramki z ustawionymi logikami rekomendacji <\/b><br \/>\n(wi\u0119cej o logikach i strategiach rekomendacji znajdziesz w artykule <a href=\"https:\/\/howto.quarticon.com\/pl\/collections\/2380279-silnik-rekomendacji-produktowych#strategie-rekomendacji\">Strategie rekomendacji<\/a> oraz <a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/2585398-strategie-rekomendacji-wprowadzenie\">Strategie rekomendacji, wprowadzenie<\/a>)<\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Przed rozpocz\u0119ciem prac potrzebujesz na pocz\u0105tku dw\u00f3ch zmiennych:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>CUSTOMER_SYMBOL<\/code> \u2013 ci\u0105g znak\u00f3w identyfikuj\u0105cy Twoje konto w systemie QuarticOn,<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>API-KEY<\/code> \u2013 klucz do API, umo\u017cliwiaj\u0105cy autoryzacj\u0119 w naszym systemie,<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>QDPI<\/code> \u2013 identyfikatory ramek, kt\u00f3re b\u0119dzie trzeba przekaza\u0107 podczas pobierania rekomendacji.<\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"intercom-interblocks-table\">\n<table>\n<tbody>\n<tr>\n<td>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>CUSTOMER_SYMBOL <\/b>otrzymasz od swojego opiekuna QON. <b>Je\u015bli nie posiadasz konta w naszym systemie albo po prostu masz pytania, <a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/2647112-chce-skorzystac-z-waszej-uslugi-i-utworzyc-w-moim-sklepie-ramki-rekomendacji-do-kogo-mam-sie-zglosic\">skontaktuj si\u0119 z naszym dzia\u0142em sprzeda\u017cy<\/a>.<\/b><\/p>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"intercom-interblocks-heading intercom-interblocks-align-left\">\n<h1 id=\"h_8421b25b58\">G\u0142\u00f3wne za\u0142o\u017cenia wymagane do prawid\u0142owego dzia\u0142ania Systemu Rekomendacji QuarticOn<\/h1>\n<\/div>\n<div class=\"intercom-interblocks-ordered-nested-list\">\n<ol>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>Katalog produkt\u00f3w jest niezb\u0119dny do tego aby wy\u015bwietla\u0107 rekomendacje<\/b>.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-ordered-nested-list\">\n<ol>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Domy\u015blnie katalog jest od\u015bwie\u017cany co 24h (najcz\u0119\u015bciej wykorzystywanym katalogiem jest ten w formacie XML zgodny z Google Merchant)<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Przygotuj katalog w formacie XML z produktami oraz niezb\u0119dnymi danymi, oraz przeka\u017c go opiekunowi, aby zosta\u0142 on uruchomiony na Twoim koncie.<\/p>\n<\/div>\n<\/li>\n<\/ol>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Przekazywane do nas <b>ID PRODUKT\u00d3W<\/b> <b>musz\u0105 by\u0107 zgodne z tymi w katalogu produkt\u00f3w.<\/b><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Aby system uczy\u0142 si\u0119, potrzebujemy aby\u015b dostarcza\u0142\/a nam <b>wszystkie <\/b>zachowania u\u017cytkownika:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-ordered-nested-list\">\n<ol>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>wy\u015bwietlenia karty produktu (proces implementacji opisany ni\u017cej)<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>klikni\u0119cia w nasze ramki rekomendacyjne (proces implementacji opisany ni\u017cej)<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>produkty zakupione przez klienta (proces implementacji opisany ni\u017cej)<\/p>\n<\/div>\n<\/li>\n<\/ol>\n<\/div>\n<\/li>\n<\/ol>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-heading intercom-interblocks-align-left\">\n<h1 id=\"h_788779ccb3\">Przyk\u0142adowa \u015bcie\u017cka zachowania u\u017cytkownika na stronie<\/h1>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Poszczeg\u00f3lne etapy s\u0105 opisane ni\u017cej. Tu przedstawiamy przyk\u0142adow\u0105 \u015bcie\u017ck\u0119 u\u017cytkownika.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-ordered-nested-list\">\n<ol>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>U\u017cytkownik wchodzi na stron\u0119 g\u0142\u00f3wn\u0105<\/p>\n<\/div>\n<div class=\"intercom-interblocks-ordered-nested-list\">\n<ol>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>na stronie g\u0142\u00f3wnej u\u017cytkownik widzi ramk\u0119 rekomendacyjn\u0105 pod tytu\u0142em np. <b>Wybrane dla Ciebie<\/b> lub <b>Bestesellery<\/b><\/p>\n<\/div>\n<\/li>\n<\/ol>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>U\u017cytkownik wchodzi na kart\u0119 produktu<\/p>\n<\/div>\n<div class=\"intercom-interblocks-ordered-nested-list\">\n<ol>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>do systemu QON zostaje wys\u0142ana informacja o wy\u015bwietleniu produktu kt\u00f3ry u\u017cytkownik odwiedzi\u0142.<br \/>\n\u200b<a href=\"https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#operation--track-event-post\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#operation&#8211;track-event-post<\/a><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><a href=\"https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#definition-EventProductView\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#definition-EventProductView<\/a><\/p>\n<\/div>\n<\/li>\n<\/ol>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>U\u017cytkownik klika w ramk\u0119 rekomendacji QON wy\u015bwietlaj\u0105c\u0105 produkty podobne<\/p>\n<\/div>\n<div class=\"intercom-interblocks-ordered-nested-list\">\n<ol>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>do systemu QON zostaje wys\u0142ana informacja o klikni\u0119ciu w produkt<br \/>\n\u200b<a href=\"https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#operation--track-event-post\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#operation&#8211;track-event-post<\/a><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><a href=\"https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#definition-EventClick\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#definition-EventClick<\/a><\/p>\n<\/div>\n<\/li>\n<\/ol>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>U\u017cytkownik dodaje do koszyka produkt klikni\u0119ty z ramki QON<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>U\u017cytkownik dokonuje zakupu tego produktu<\/p>\n<\/div>\n<div class=\"intercom-interblocks-ordered-nested-list\">\n<ol>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>System QON dostaje informacj\u0119 o dokonanej transakcji<br \/>\n\u200b<a href=\"https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#operation--track-event-post\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#operation&#8211;track-event-post<\/a><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><a href=\"https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#definition-EventTransaction\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#definition-EventTransaction<\/a><\/p>\n<\/div>\n<\/li>\n<\/ol>\n<\/div>\n<\/li>\n<\/ol>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>W przypadku gdy zakup zosta\u0142 dokonany po klikni\u0119ciu w ramk\u0119 rekomendacji, produkt ten zostanie potraktowany jako zakup dzi\u0119ki QON.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Zakup dokonany w ci\u0105gu 24h od momentu klikni\u0119cia w rekomendacj\u0119 jest traktowany jako zakup z rekomendacji QON.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-heading intercom-interblocks-align-left\">\n<h1 id=\"h_671f9725ed\">Proces implementacji krok po kroku<\/h1>\n<\/div>\n<div class=\"intercom-interblocks-subheading intercom-interblocks-align-left\">\n<h2 id=\"h_858e660b1f\">1 .Przygotuj ramki rekomendacyjne<\/h2>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Nasz zesp\u00f3\u0142 przygotuje dla Ciebie ramki zgodnie z naszymi <a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">best practice<\/a> \u2013 <b>wtedy ten krok mo\u017cesz pomin\u0105\u0107. <\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Mo\u017cesz natomiast dostosowa\u0107 ramki do w\u0142asnych potrzeb ju\u017c na etapie p\u00f3\u017aniejszej wsp\u00f3\u0142pracy tzn. doda\u0107 nowe ramki, zmieni\u0107 im logiki itp. Pomocny b\u0119dzie artyku\u0142 <a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/2536162-dodawanie-ramek-rekomendacji\">Dodawanie ramek rekomendacji<\/a>.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>O tym, jakie rekomendacje na jakiej stronie proponujemy, poczytasz <a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/2585398-strategie-rekomendacji-wprowadzenie\">tutaj<\/a>, a <a href=\"https:\/\/howto.quarticon.com\/pl\/collections\/2380279-silnik-rekomendacji-produktowych#strategie-rekomendacji\">tutaj<\/a> z kolei znajdziesz opisy poszczeg\u00f3lnych strategii.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Aby doda\u0107 now\u0105 ramk\u0119 rekomendacji nale\u017cy przej\u015b\u0107 do zak\u0142adki <b><i>Rekomendacje<\/i> <\/b>i<i> <\/i>wybra\u0107 przycisk <b><i>Dodaj widget.<\/i><\/b> Zostaniesz przekierowany do edytora, kt\u00f3ry sk\u0142ada si\u0119 z czterech etap\u00f3w:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-ordered-nested-list\">\n<ol>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/4200575-instrukcja-wdrozenia-samodzielnego-backend-rest-api#h_cb10b096fa\">Wska\u017c miejsce dla rekomendacji w sklepie<\/a><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Ustawienia widgetu (zaawansowane kierowanie ramki &#8211; pominiemy w instrukcji)<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Wybierz strategie rekomendacji produkt\u00f3w<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Kreator drag&amp;drop<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Podsumowanie<\/p>\n<\/div>\n<\/li>\n<\/ol>\n<\/div>\n<div class=\"intercom-interblocks-subheading3 intercom-interblocks-align-left\">\n<h3 id=\"h_9521c82393\">Wska\u017c miejsce dla rekomendacji w sklepie<\/h3>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Struktura miejsc dla ramek jest wst\u0119pnie zdefiniowana przez nasz system i wygl\u0105da nast\u0119puj\u0105co:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-image intercom-interblocks-align-center\"><a href=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778189132\/bee71ed0325efd3b21aa8f5b\/image.png?expires=1760017500&amp;signature=f57f1f376c8ee9e6b3544aa97d980bf53c9092e0c25f1e5ae0415d83810f2822&amp;req=cycvF8F3nIJdFb4f3HP0gOSMlihy%2F2jITm33LhvXQI5ZgLJJbHAlF6IHdBBO%0A%2F0zXVjOQDmUkZ%2F1%2F7A%3D%3D%0A\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778189132\/bee71ed0325efd3b21aa8f5b\/image.png?expires=1760017500&amp;signature=f57f1f376c8ee9e6b3544aa97d980bf53c9092e0c25f1e5ae0415d83810f2822&amp;req=cycvF8F3nIJdFb4f3HP0gOSMlihy%2F2jITm33LhvXQI5ZgLJJbHAlF6IHdBBO%0A%2F0zXVjOQDmUkZ%2F1%2F7A%3D%3D%0A\" width=\"851\" height=\"379\" \/><\/a><\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Powy\u017cszy uk\u0142ad zosta\u0142 przez nas opracowany na bazie wieloletnich do\u015bwiadcze\u0144 z klientami i sprawdzonych przez nas metod. Miejsca ramek mog\u0105 zosta\u0107 zmodyfikowane przez u\u017cytkownika, jednak zalecamy, aby od pocz\u0105tku zarz\u0105dzania rekomendacjami trzyma\u0107 si\u0119 okre\u015blonej hierarchii wyznaczonych miejsc rekomendacji.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Nazwy stron i miejsc na stronach oznaczaj\u0105 wst\u0119pnie zak\u0142adan\u0105 pozycj\u0119, gdzie zostanie wywo\u0142ana ramka rekomendacji. Przyk\u0142adowo, je\u017celi Twoim celem jest dodanie ramki na karcie produktu pod kr\u00f3tkim opisem produktu, ale przed sekcj\u0105 dodatkowych informacji o produkcie, zalecamy wykorzystanie placementu <i>STRONA PRODUKTU <\/i>-&gt;<i> Middle<\/i>.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-table\">\n<table>\n<tbody>\n<tr>\n<td>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>W ramach jednego placementu mo\u017cesz zdefiniowa\u0107 kilka ramek rekomendacji. Spowoduje to losowe wybieranie ramek przy ka\u017cdorazowym wywo\u0142aniu placementu, do kt\u00f3rego s\u0105 przypi\u0119te. W zak\u0142adce <i>Wska\u017c miejsce dla rekomendacji w sklepie <\/i>nale\u017cy wybra\u0107 miejsce w zdefiniowanej strukturze, w kt\u00f3rym dana ramka ma si\u0119 pojawi\u0107.<\/p>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"intercom-interblocks-subheading3 intercom-interblocks-align-left\">\n<h3 id=\"h_f9ae8e8635\">Wyb\u00f3r strategii rekomendacji<\/h3>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>W kolejnej zak\u0142adce <b><i>Wybierz strategi\u0119 rekomendacji produktu<\/i><\/b> dost\u0119pnych jest 12 predefiniowanych strategii rekomendacji. Po najechaniu kursorem na strategi\u0119, pojawi si\u0119 jej kr\u00f3tki opis. Wybierz jedn\u0105 z nich i zdecyduj jakie produkty maj\u0105 zosta\u0107 wy\u015bwietlone u\u017cytkownikowi.<br \/>\n\u200b<\/p>\n<\/div>\n<div class=\"intercom-interblocks-image intercom-interblocks-align-center\"><a href=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778194226\/7e672afee00acaa553876c00\/image.png?expires=1760017500&amp;signature=4c66d39ffb113c01ae7bc251000437022db0702700b7dc468f86c9e778043cd8&amp;req=cycvF8B6n4NZFb4f3HP0gPj22D6c1R8D9LA0xYxbVKGhhsWUCijDpeq7jCJP%0A841S6N4LixFhjifeHQ%3D%3D%0A\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778194226\/7e672afee00acaa553876c00\/image.png?expires=1760017500&amp;signature=4c66d39ffb113c01ae7bc251000437022db0702700b7dc468f86c9e778043cd8&amp;req=cycvF8B6n4NZFb4f3HP0gPj22D6c1R8D9LA0xYxbVKGhhsWUCijDpeq7jCJP%0A841S6N4LixFhjifeHQ%3D%3D%0A\" width=\"1050\" height=\"351\" \/><\/a><\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Poni\u017cej przedstawiamy nasze best practice strategii rekomendacji:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-image intercom-interblocks-align-center\"><a href=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778194968\/64daa150e19e057cfbafef5a\/image.png?expires=1760017500&amp;signature=cc547c400c37ded81385349952eb1914afc3da801a51659434850f39ba9d1a92&amp;req=cycvF8B6lIdXFb4f3HP0gCbcop6DAt95THG7g%2FbjtU1GNa5ZIfHN8TKxy15%2F%0A0yR1EpJdn8srhNYATw%3D%3D%0A\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778194968\/64daa150e19e057cfbafef5a\/image.png?expires=1760017500&amp;signature=cc547c400c37ded81385349952eb1914afc3da801a51659434850f39ba9d1a92&amp;req=cycvF8B6lIdXFb4f3HP0gCbcop6DAt95THG7g%2FbjtU1GNa5ZIfHN8TKxy15%2F%0A0yR1EpJdn8srhNYATw%3D%3D%0A\" width=\"483\" height=\"752\" \/><\/a><\/div>\n<div class=\"intercom-interblocks-table\">\n<table>\n<tbody>\n<tr>\n<td>\n<div class=\"intercom-interblocks-subheading intercom-interblocks-align-left\">\n<h2 id=\"h_97700f9399\">Pami\u0119taj!<\/h2>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Opisane praktyki nie musz\u0105 sprawdzi\u0107 si\u0119 u ka\u017cdego klienta, poniewa\u017c ka\u017cda bran\u017ca rz\u0105dzi si\u0119 swoimi prawami i mo\u017ce okaza\u0107 si\u0119, \u017ce zoptymalizowanie dzia\u0142ania silnika rekomendacji w Twoim sklepie wymaga przetestowania innych ustawie\u0144. Powy\u017cszy schemat jest jedynie propozycj\u0105, jeste\u015bmy otwarci na Twoje sugestie.<\/p>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"intercom-interblocks-subheading3 intercom-interblocks-align-left\">\n<h3 id=\"h_801ff60df5\">Kreator drag&amp;drop<\/h3>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>W przypadku wdro\u017cenia poprzez API, kreator nie b\u0119dzie wykorzystywany, gdy\u017c to Ty decydujesz o wygl\u0105dzie swoich rekomendacji. Nazwij swoj\u0105 ramk\u0119 tak, aby wiedzie\u0107, gdzie on si\u0119 znajduje i przejd\u017a dalej do kolejnego etapu, klikaj\u0105c <b>Dalej.<\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-subheading3 intercom-interblocks-align-left\">\n<h3 id=\"h_d11982af26\">Podsumowanie<\/h3>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Sprawd\u017a podsumowanie i zapisz ramk\u0119.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-image intercom-interblocks-align-center\"><a href=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778197058\/e183d28f7661b384fbbf7935\/image.png?expires=1760017500&amp;signature=f36f26cf579e075f0d9ae86b0a11c2b77ff7d3b42a0fb3adf5ab3d6e8ad51a0a&amp;req=cycvF8B5nYRXFb4f3HP0gHXifnapTyq3PIAaSBEqN1FVhDKaQBV8NgYitwv4%0AIyKD5ajYOvW6P0dUSg%3D%3D%0A\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778197058\/e183d28f7661b384fbbf7935\/image.png?expires=1760017500&amp;signature=f36f26cf579e075f0d9ae86b0a11c2b77ff7d3b42a0fb3adf5ab3d6e8ad51a0a&amp;req=cycvF8B5nYRXFb4f3HP0gHXifnapTyq3PIAaSBEqN1FVhDKaQBV8NgYitwv4%0AIyKD5ajYOvW6P0dUSg%3D%3D%0A\" width=\"1047\" height=\"385\" \/><\/a><\/div>\n<div class=\"intercom-interblocks-subheading3 intercom-interblocks-align-left\">\n<h3 id=\"h_592873466c\">Instrukcj\u0119 powt\u00f3rz dla wszystkich ramek, kt\u00f3re chcesz zamie\u015bci\u0107 na swojej stronie.<\/h3>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Ramki mo\u017cna edytowa\u0107, przesuwa\u0107, deaktywowa\u0107 \u2013 wi\u0119cej szczeg\u00f3\u0142\u00f3w znajdziesz <a href=\"https:\/\/howto.quarticon.com\/pl\/articles\/2536749-kreator-widgetow\">w tym artykule<\/a>.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-subheading intercom-interblocks-align-left\">\n<h2 id=\"h_668c2c77eb\">2. Zaimplementuj wysy\u0142anie<i> Informacji o odwiedzinach karty produktu<\/i><\/h2>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Do wys\u0142ania informacji o produkcie wykorzystamy Endpoint <code>https:\/\/rest.quartic.pl\/store\/track\/event<\/code> , kt\u00f3ry przyjmie jako eventType <code>eventProductView<\/code>. Endpoint szerzej opisany jest <a href=\"https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#tag-Event\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">tutaj<\/a>.<br \/>\n\u200b<br \/>\nW momencie, gdy u\u017cytkownik wejdzie na stron\u0119 produktu (niezale\u017cnie czy trafi tam z wyszukiwarki, strony g\u0142\u00f3wnej czy ramki QON) wysy\u0142amy o tym informacj\u0119 do QON.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-table\">\n<table>\n<tbody>\n<tr>\n<td>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>Dlaczego warto wysy\u0142a\u0107 ten event zawsze gdy u\u017cytkownik odwiedza stron\u0119 produktu? Poniewa\u017c im szerzej znamy histori\u0119 u\u017cytkownika na stronie, tym lepsze rekomendacje mo\u017cemy mu serwowa\u0107 \ud83d\ude42<\/b><\/p>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>W zale\u017cno\u015bci od tego w jakiej technologii kod jest implementowany, przedstawiamy poni\u017cej przyk\u0142ady wykonania requestu (w poni\u017cszych przyk\u0142adach zosta\u0142y u\u017cyte zmockowane zmienne).<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Przyk\u0142ady kodu:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>JAVASCRIPT:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>var myHeaders = new Headers();\r\nmyHeaders.append(\"Content-Type\", \"application\/json\");\r\n\r\n\r\nvar raw = JSON.stringify({\r\n  \"customer\": \"CUSTOMER_SYMBOL\",\r\n  \"eventType\": \"eventProductView\",\r\n  \"timestamp\": 1687957025,\r\n  \"cookie\": \"USER_IDENTIFIER\",\r\n  \"productId\": \"PRODUCT_ID\"\r\n});\r\n\r\nvar requestOptions = {\r\n  method: 'POST',\r\n  headers: myHeaders,\r\n  body: raw,\r\n  redirect: 'follow'\r\n};\r\n\r\nfetch(\"https:\/\/rest.quartic.pl\/store\/track\/event\", requestOptions)\r\n  .then(response =&gt; response.text())\r\n  .then(result =&gt; console.log(result))\r\n  .catch(error =&gt; console.log('error', error));<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>NODE.JS:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>const axios = require('axios');\r\nlet data = JSON.stringify({\r\n  \"customer\": \"CUSTOMER_SYMBOL\",\r\n  \"eventType\": \"eventProductView\",\r\n  \"timestamp\": 1687957025,\r\n  \"cookie\": \"USER_IDENTIFIER\",\r\n  \"productId\": \"PRODUCT_ID\"\r\n});\r\n\r\nlet config = {\r\n  method: 'post',\r\n  url: 'https:\/\/rest.quartic.pl\/store\/track\/event',\r\n  headers: { \r\n    'x-api-key': 'YOUR_API_KEY', \r\n    'Content-Type': 'application\/json'\r\n  },\r\n  data : data\r\n};\r\n\r\naxios.request(config)\r\n.then((response) =&gt; {\r\n  console.log(JSON.stringify(response.data));\r\n})\r\n.catch((error) =&gt; {\r\n  console.log(error);\r\n});<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>PHP:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>&lt;?php\r\n\r\n$curl = curl_init();\r\n\r\ncurl_setopt_array($curl, array(\r\n  CURLOPT_URL =&gt; 'https:\/\/rest.quartic.pl\/store\/track\/event',\r\n  CURLOPT_RETURNTRANSFER =&gt; true,\r\n  CURLOPT_ENCODING =&gt; '',\r\n  CURLOPT_MAXREDIRS =&gt; 10,\r\n  CURLOPT_TIMEOUT =&gt; 0,\r\n  CURLOPT_FOLLOWLOCATION =&gt; true,\r\n  CURLOPT_HTTP_VERSION =&gt; CURL_HTTP_VERSION_1_1,\r\n  CURLOPT_CUSTOMREQUEST =&gt; 'POST',\r\n  CURLOPT_POSTFIELDS =&gt;'{\r\n  \"customer\": \"CUSTOMER_SYMBOL\",\r\n  \"eventType\": \"eventProductView\",\r\n  \"timestamp\": 1687957025,\r\n  \"cookie\": \"USER_IDENTIFIER\",\r\n  \"productId\": \"PRODUCT_ID\"\r\n}',\r\n  CURLOPT_HTTPHEADER =&gt; array(\r\n    'x-api-key: YOUR_API_KEY',\r\n    'Content-Type: application\/json'\r\n  ),\r\n));\r\n\r\n$response = curl_exec($curl);\r\n\r\ncurl_close($curl);\r\necho $response;<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>BASH:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>curl --location 'https:\/\/rest.quartic.pl\/store\/track\/event' \\\r\n--header 'x-api-key: YOUR_API_KEY' \\\r\n--header 'Content-Type: application\/json' \\\r\n--data '{\r\n  \"customer\": \"CUSTOMER_SYMBOL\",\r\n  \"eventType\": \"eventProductView\",\r\n\r\n\r\n  \"timestamp\": 1687957025,\r\n  \"cookie\": \"USER_IDENTIFIER\",\r\n  \"productId\": \"PRODUCT_ID\"\r\n}'<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-subheading intercom-interblocks-align-left\">\n<h2 id=\"h_f852de5482\">3. Zaimplementuj wysy\u0142anie <i>Informacji o zakupach<\/i><\/h2>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Do wys\u0142ania informacji o produkcie, wykorzystamy Endpoint <code>https:\/\/rest.quartic.pl\/store\/track\/event<\/code> , kt\u00f3ry przyjmie jako eventType <code>eventTransaction<\/code>. Endpoint szerzej opisany jest <a href=\"https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#tag-Event\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">tutaj<\/a>.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>W momencie, gdy u\u017cytkownik dokona transakcji, niezale\u017cnie od sposobu p\u0142atno\u015bci, wy\u015blij ca\u0142e zam\u00f3wienie do QON. Je\u015bli dodajesz produkty gratisowe o cenie 0, lub inne promocyjne produkty do wielu zam\u00f3wie\u0144, mo\u017cna je pomin\u0105\u0107, gdy\u017c mog\u0105 zaburzy\u0107 statystyki zakupowe.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>JAVASCRIPT:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>var myHeaders = new Headers();\r\nmyHeaders.append(\"Content-Type\", \"application\/json\");\r\n\r\nvar raw = JSON.stringify({\r\n  \"customer\": \"CUSTOMER_SYMBOL\",\r\n  \"transactionId\": \"TRANSACTION_ID\",\r\n  \"basket\": [\r\n    {\r\n      \"productId\": \"6666333\",\r\n      \"price\": 130,\r\n      \"quantity\": 2\r\n    },\r\n    {\r\n      \"productId\": \"42445\",\r\n      \"price\": 930,\r\n      \"quantity\": 2\r\n    }\r\n  ],\r\n  \"eventType\": \"eventTransaction\",\r\n  \"userId\": \"LOGGEDIN_USER_ID\",\r\n  \"timestamp\": 1482840417,\r\n  \"cookie\": \"USER_IDENTIFIER\"\r\n});\r\n\r\nvar requestOptions = {\r\n  method: 'POST',\r\n  headers: myHeaders,\r\n  body: raw,\r\n  redirect: 'follow'\r\n};\r\n\r\nfetch(\"https:\/\/rest.quartic.pl\/store\/track\/event\", requestOptions)\r\n  .then(response =&gt; response.text())\r\n  .then(result =&gt; console.log(result))\r\n  .catch(error =&gt; console.log('error', error));<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>NODEJS:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>const axios = require('axios');\r\nlet data = JSON.stringify({\r\n  \"customer\": \"CUSTOMER_SYMBOL\",\r\n  \"transactionId\": \"TRANSACTION_ID\",\r\n  \"basket\": [\r\n    {\r\n      \"productId\": \"6666333\",\r\n      \"price\": 130,\r\n      \"quantity\": 2\r\n    },\r\n    {\r\n      \"productId\": \"42445\",\r\n      \"price\": 930,\r\n      \"quantity\": 2\r\n    }\r\n  ],\r\n  \"eventType\": \"eventTransaction\",\r\n  \"userId\": \"1\",\r\n  \"deviceId\": \"android-12\",\r\n  \"timestamp\": 1482840417,\r\n  \"cookie\": \"USER_IDENTIFIER\"\r\n});\r\n\r\nlet config = {\r\n  method: 'post',\r\n  maxBodyLength: Infinity,\r\n  url: 'https:\/\/rest.quartic.pl\/store\/track\/event',\r\n  headers: { \r\n    'x-api-key': 'API-KEY', \r\n    'Content-Type': 'application\/json', \r\n  },\r\n  data : data\r\n};\r\n\r\naxios.request(config)\r\n.then((response) =&gt; {\r\n  console.log(JSON.stringify(response.data));\r\n})\r\n.catch((error) =&gt; {\r\n  console.log(error);\r\n  \r\n});<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>PHP:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>&lt;?php\r\n\r\n$curl = curl_init();\r\n\r\ncurl_setopt_array($curl, array(\r\n  CURLOPT_URL =&gt; 'https:\/\/rest.quartic.pl\/store\/track\/event',\r\n  CURLOPT_RETURNTRANSFER =&gt; true,\r\n  CURLOPT_ENCODING =&gt; '',\r\n  CURLOPT_MAXREDIRS =&gt; 10,\r\n  CURLOPT_TIMEOUT =&gt; 0,\r\n  CURLOPT_FOLLOWLOCATION =&gt; true,\r\n  CURLOPT_HTTP_VERSION =&gt; CURL_HTTP_VERSION_1_1,\r\n  CURLOPT_CUSTOMREQUEST =&gt; 'POST',\r\n  CURLOPT_POSTFIELDS =&gt;'{\r\n  \"customer\": \"CUSTOMER_SYMBOL\",\r\n  \"transactionId\": \"TRANSACTION_ID\",\r\n  \"basket\": [\r\n    {\r\n      \"productId\": \"6666333\",\r\n      \"price\": 130,\r\n      \"quantity\": 2\r\n    },\r\n    {\r\n      \"productId\": \"42445\",\r\n      \"price\": 930,\r\n      \"quantity\": 2\r\n    }\r\n  ],\r\n  \"eventType\": \"eventTransaction\",\r\n  \"userId\": \"1\",\r\n  \"deviceId\": \"android-12\",\r\n  \"timestamp\": 1482840417,\r\n  \"cookie\": \"USER_IDENTIFIER\"\r\n}',\r\n  CURLOPT_HTTPHEADER =&gt; array(\r\n    'x-api-key: API-KEY',\r\n    'Content-Type: application\/json'\r\n  ),\r\n));\r\n\r\n$response = curl_exec($curl);\r\n\r\ncurl_close($curl);\r\necho $response;<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-subheading intercom-interblocks-align-left\">\n<h2 id=\"h_214fdf734e\">4. Zaimplementuj ramki rekomendacji na swojej stronie<\/h2>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Aby rozpocz\u0105\u0107 proces samej implementacji, musisz wybra\u0107 ramk\u0119 do implementacji i posiada\u0107 jej <b>placementID. <\/b>PlacementId to nasz unikalny identyfikator ramki. Znajdziesz go przechodz\u0105c do zak\u0142adki <b>Rekomendacje -&gt;<\/b> <b>Widgety (<a href=\"https:\/\/cp.quarticon.com\/upseller\/myPlacements\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/cp.quarticon.com\/upseller\/myPlacements<\/a>).<\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Proces implementacji opiszemy na przyk\u0142adzie <b>ramki Wybrane dla Ciebie<\/b> na stronie g\u0142\u00f3wnej:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-image intercom-interblocks-align-center\"><a href=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778207092\/4b711cb2d92f5fdf9d98dac0\/image.png?expires=1760017500&amp;signature=7636b8fdbb731a7ad42ceb5b786313bf0d9151e25503722973ebbe3a0bc00749&amp;req=cycvFMl5nYhdFb4f3HP0gB4sFHFCkJyvyHut3zv8dS%2BE9YIjuBwla179gvC6%0AgxUnsEgXjAKrmouAeg%3D%3D%0A\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778207092\/4b711cb2d92f5fdf9d98dac0\/image.png?expires=1760017500&amp;signature=7636b8fdbb731a7ad42ceb5b786313bf0d9151e25503722973ebbe3a0bc00749&amp;req=cycvFMl5nYhdFb4f3HP0gB4sFHFCkJyvyHut3zv8dS%2BE9YIjuBwla179gvC6%0AgxUnsEgXjAKrmouAeg%3D%3D%0A\" width=\"1048\" height=\"552\" \/><\/a><\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Kolorem, zaznaczyli\u015bmy jej <b>placementId <\/b>\u2013 to w\u0142a\u015bnie jego potrzebujemy do implementacji.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Nasz placementId to: <b><i>_qS_2tj3o. <\/i><\/b>Mo\u017cemy zar\u00f3wno przekaza\u0107 <b><i>_qS_2tj3o,<\/i><\/b> jak i samo <b><i>2tj3o, <\/i><\/b>gdy\u017c system rozpozna oba identyfikatory.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-subheading3 intercom-interblocks-align-left\">\n<h3 id=\"h_20501a5f1d\">Request po rekomendacje<\/h3>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>W celu pobrania rekomendacji, skorzystamy z endpointu: <code>https:\/\/rest.quartic.pl\/store\/recommendation<\/code> oraz metody GET, zatem spreparowany link mo\u017cemy r\u00f3wnie\u017c otworzy\u0107 w przegl\u0105darce. Endpoint szerzej opisany jest <a href=\"https:\/\/docs.quarticon.com\/storeapi\/dokumentacja\/#operation--recommendation-get\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">tutaj<\/a>.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Buduj\u0105c zapytanie, musimy przekaza\u0107 kilka <b>niezb\u0119dnych <\/b>zmiennych:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>customer<\/code> \u2013 Tw\u00f3j <code>customerSymbol<\/code><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>placementId<\/code> \u2013 identyfikator ramki, kt\u00f3ry zwr\u00f3ci produkty z odpowiedni\u0105 logik\u0105 ustawion\u0105 w panelu<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>cookie<\/code> lub <code>deviceId<\/code> \u2013 identyfikator u\u017cytkownika lub jego urz\u0105dzenia<\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Dodatkowe parametry, kt\u00f3re nie s\u0105 wymagane:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>userId<\/code> \u2013 ID zalogowanego usera<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>filterProduct<\/code> \u2013 ID produktu, do kt\u00f3rego maj\u0105 by\u0107 serwowane rekomendacje (dotyczy logik Podobne, Cross-selling, Cross-selling koszyk)<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>filterCategory<\/code> \u2013 filtr kategorii zgodny z tym, kt\u00f3ry jest w katalogu; pozwala zwr\u00f3ci\u0107 produkty tylko z danej kategorii; stosowany g\u0142\u00f3wnie na stronach kategorii<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>deduplicate<\/code> \u2013 true, aby wyra\u017anie poprosi\u0107 o zdeduplikowan\u0105 tre\u015b\u0107 w przypadku wielu rekomendacji na jednej stronie<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>requestId<\/code> \u2013 unikatowy identyfikator \u017c\u0105dania (u\u017cywany do deduplikacji rekomendacji); musi by\u0107 u\u017cyty razem z parametrem &#8222;deduplicate&#8221; (dozwolone znaki: [a-z0-9A-Z-_])<\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Przyk\u0142adowe wywo\u0142ania:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>JAVASCRIPT:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>var requestOptions = {\r\n  method: 'GET',\r\n  redirect: 'follow'\r\n};\r\n\r\nfetch(\"https:\/\/rest.quartic.pl\/store\/recommendation?customer=CUSTOMER_SYMBOL&amp;placementId=PLACEMENT_ID&amp;cookie=USER_IDENTIFIER\", requestOptions)\r\n  .then(response =&gt; response.text())\r\n  .then(result =&gt; console.log(result))\r\n  .catch(error =&gt; console.log('error', error));<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>NODE:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>const axios = require('axios');\r\n\r\nlet config = {\r\n  method: 'get',\r\n  maxBodyLength: Infinity,\r\n  url: 'https:\/\/rest.quartic.pl\/store\/recommendation?customer=CUSTOMER_SYMBOL&amp;placementId=PLACEMENT_ID&amp;cookie=USER_IDENTIFIER',\r\n  headers: { }\r\n};\r\n\r\naxios.request(config)\r\n.then((response) =&gt; {\r\n  console.log(JSON.stringify(response.data));\r\n})\r\n.catch((error) =&gt; {\r\n  console.log(error);\r\n});<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>PHP:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>&lt;?php\r\n\r\n$curl = curl_init();\r\n\r\ncurl_setopt_array($curl, array(\r\n  CURLOPT_URL =&gt; 'https:\/\/rest.quartic.pl\/store\/recommendation?customer=CUSTOMER_SYMBOL&amp;placementId=PLACEMENT_ID&amp;cookie=USER_IDENTIFIER',\r\n  CURLOPT_RETURNTRANSFER =&gt; true,\r\n  CURLOPT_ENCODING =&gt; '',\r\n  CURLOPT_MAXREDIRS =&gt; 10,\r\n  CURLOPT_TIMEOUT =&gt; 0,\r\n  CURLOPT_FOLLOWLOCATION =&gt; true,\r\n  CURLOPT_HTTP_VERSION =&gt; CURL_HTTP_VERSION_1_1,\r\n  CURLOPT_CUSTOMREQUEST =&gt; 'GET',\r\n));\r\n\r\n$response = curl_exec($curl);\r\n\r\ncurl_close($curl);\r\necho $response;<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-subheading intercom-interblocks-align-left\">\n<h2 id=\"h_f18202edaf\">Odpowied\u017a z API<\/h2>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>W odpowiedzi zwr\u00f3cony zostanie JSON z produktami:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>{\r\n    \"status\": \"OK\",\r\n    \"timestamp\": 1688037828,\r\n    \"qrId\": null,\r\n    \"duplicatesCount\": 0,\r\n    \"data\": [\r\n        {\r\n            \"id\": \"198464\",\r\n            \"title\": \"Example product title\",\r\n            \"image\": \"https:\/\/example.com.pl\/media\/catalog\/product\/cache\/ab49daceb272271aaf5653f0616d75be\/4\/f\/4fss22tfshf037-81s-w-01-main.jpg\",\r\n            \"description\": \"sizes_2\",\r\n            \"url\": \"https:\/\/rec.quartic.pl\/c.php?c=6d3e333af980102c&amp;ci=68112&amp;p=198464&amp;pid=4&amp;qdpi=lqr2&amp;qrid=ad_649d69c4d611d&amp;ss=rtb_24618&amp;url=aHR0cHM6Ly80Zi5jb20ucGwvbGVnaW5zeS1rb2xhcmtpLXRyZW5pbmdvd2Utc3p5Ymtvc2NobmFjZS1kYW1za2llLTRmLXgtYW5hLWxld2FuZG93c2thLTRmczJ0ZnNoZjAzNy04MXMuaHRtbA%3D%3D&amp;k=6543234567\",\r\n            \"price\": \"79,99\",\r\n            \"priceOld\": \"129,99\",\r\n            \"custom1\": \"https:\/\/example.com.pl\/media\/catalog\/product\/cache\/ab49daceb272271aaf5653f0616d75be\/4\/f\/4fss22tfshf037-81s-w-02-mini.jpg\",\r\n            \"custom2\": \"\",\r\n            \"custom3\": \"\",\r\n            \"custom4\": \"\",\r\n            \"status\": true,\r\n            \"trackingString\": \"eyJjIjoiNmQzZTMzM2FmOTgwMTAyYyIsImNpIjoiNjgxMTIiLCJwIjoiMTk4NDY0IiwicGlkIjoiNCIsInFkcGkiOiJscXIyIiwicXJpZCI6ImFkXzY0OWQ2OWM0ZDYxMWQiLCJzcyI6InJ0Yl8yNDYxOCJ9\"\r\n        }\r\n        ....\r\n    ]\r\n}<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Teraz wystarczy, \u017ce produkty te zostan\u0105 opakowane w HTML i umieszczone na stronie np. w taki spos\u00f3b:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-image intercom-interblocks-align-left\"><a href=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778213548\/db6e85df5b050e83bd25e3f2\/image.png?expires=1760017500&amp;signature=f8aa770be985850f4b92cfeb7c43ecbd1b525bb7bcae595cb45140d2c86c87dd&amp;req=cycvFMh9mIVXFb4f3HP0gG%2BxhS1g5vtMlaS7I9i5u%2BDjk3EAagQjosBKlZi0%0Ab%2B%2FGA%2BwY8clsLDVjTg%3D%3D%0A\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778213548\/db6e85df5b050e83bd25e3f2\/image.png?expires=1760017500&amp;signature=f8aa770be985850f4b92cfeb7c43ecbd1b525bb7bcae595cb45140d2c86c87dd&amp;req=cycvFMh9mIVXFb4f3HP0gG%2BxhS1g5vtMlaS7I9i5u%2BDjk3EAagQjosBKlZi0%0Ab%2B%2FGA%2BwY8clsLDVjTg%3D%3D%0A\" width=\"1064\" height=\"376\" \/><\/a><\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>lub taki:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-image intercom-interblocks-align-left\"><a href=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778213958\/f6a484b98e148fd56a918e89\/image.png?expires=1760017500&amp;signature=20a91976c32fcf9b814d9d049bf14d030327055b57924c06fd9466f70e11b530&amp;req=cycvFMh9lIRXFb4f3HP0gDHulFQcmSGt4gup5XvfB%2BUZCYnAkILjfGYzrHt%2B%0AwcRfFjSpO9GACIETMQ%3D%3D%0A\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/downloads.intercomcdn.com\/i\/o\/778213958\/f6a484b98e148fd56a918e89\/image.png?expires=1760017500&amp;signature=20a91976c32fcf9b814d9d049bf14d030327055b57924c06fd9466f70e11b530&amp;req=cycvFMh9lIRXFb4f3HP0gDHulFQcmSGt4gup5XvfB%2BUZCYnAkILjfGYzrHt%2B%0AwcRfFjSpO9GACIETMQ%3D%3D%0A\" width=\"984\" height=\"476\" \/><\/a><\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Pami\u0119taj, \u017ce integruj\u0105c si\u0119 poprzez API, to, jak b\u0119d\u0105 wygl\u0105da\u0142y ramki, zale\u017cy od Ciebie.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Mo\u017cesz zdecydowa\u0107, aby ka\u017cda ramka wygl\u0105da\u0142a inaczej lub, opieraj\u0105c si\u0119 na swoich ramkach na stronie, odwzorowa\u0107 je w taki spos\u00f3b, aby niczym r\u00f3\u017cni\u0142y si\u0119 od natywnych ramek znajduj\u0105cych si\u0119 na stronie.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>Tytu\u0142y Twoich ramek r\u00f3wnie\u017c zale\u017c\u0105 od Ciebie, dlatego wdra\u017caj\u0105c si\u0119 w ten spos\u00f3b, masz najwi\u0119ksz\u0105 swobod\u0119.<\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-subheading intercom-interblocks-align-left\">\n<h2 id=\"h_807ece4cdb\">5. Zaimplementuj ramki rekomendacji na pozosta\u0142ych stronach<\/h2>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Spos\u00f3b implementacji na innych stronach jest taki sam jak w powy\u017cszym przyk\u0142adzie.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-table\">\n<table>\n<tbody>\n<tr>\n<td>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>Dopuszczone znaki: [a-z0-9A-Z\\-_,!|]. <\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Filtry nale\u017cy przekaza\u0107 jako <b>encodeURI<\/b>, tzn. tak, aby znaki specjalne by\u0142y zamienione na ich odpowiedniki z %:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&#8222;kategoria_1|kategoria_2&#8221; musz\u0105 by\u0107 przekazane jako :<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&#8222;kategoria1%7Ckategoria2&#8221;<\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>R\u00f3\u017cnice s\u0105 nastomiast w u\u017cytym filtrowaniu. Rekomendujemy poni\u017cszy spos\u00f3b implementacji:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>Strona kategorii, podkategorii, marki<\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>przeka\u017c do parametru rekomendacji filtr kategorii jako <code>filterCategory<\/code>:<br \/>\n\u200b<code>fliterCategory=CATEGORY_ID<\/code> \u2013 zwr\u00f3ci tylko produkty z kategorii o podanym ID<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>kategoria1,kategoria2,kategoria3<\/code> \u2013 system wybierze produkty, kt\u00f3re nale\u017c\u0105 do: kategoria1 ORAZ kategoria2 ORAZ kategoria3<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>kategoria1|kategoria2|kategoria3<\/code> \u2013 system wybierze produkty, kt\u00f3re nale\u017c\u0105 do: kategoria1 LUB kategoria2 LUB kategoria3<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>!kategoria1<\/code> \u2013 system wybierze produkty, kt\u00f3re NIE nale\u017c\u0105 do: kategoria1<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>!kategoria1,kategoria2<\/code> \u2013 system wybierze produkty, kt\u00f3re NALE\u017b\u0104 do: kategoria2, ale NIE nale\u017c\u0105 do kategoria1<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>!kategoria1,kategoria2|kategoria3<\/code> \u2013 system wybierze produkty, kt\u00f3re NALE\u017b\u0104 do: kategoria2 LUB kategoria3 ORAZ NIE nale\u017c\u0105 do kategoria1<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>Strona produktu, koszyka<\/b><br \/>\nImplementacja tego rozwi\u0105zania dotyczy rekomendacji z logikami <b>Produkty Podobne<\/b>, <b>Cross-selling <\/b>oraz <b>Cross-selling koszyk, Up-selling; <\/b>w przypadku pozosta\u0142ych logik<b> <\/b>parametr zostanie pomini\u0119ty<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>przeka\u017c do konfiguracji ramki ID ogl\u0105danego produktu lub produkt\u00f3w, kt\u00f3re znajduj\u0105 si\u0119 w koszyku<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>przeka\u017c do requestu <code>filterProduct<\/code><\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>filterProduct=ID_PRODUKTU<\/code><\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>filterProduct=IDPRODUKTU_1,ID_PRODUKTU_2<\/code><\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"intercom-interblocks-table\">\n<table>\n<tbody>\n<tr>\n<td>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Powy\u017csze filtrowania mo\u017cna ze sob\u0105 \u0142\u0105czy\u0107.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Mo\u017cesz na karcie produktu wy\u015bwietla\u0107 produkty tylko z konkretnej kategorii lub produkty z wykluczonej kategorii.<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>Nale\u017cy mie\u0107 na uwadze to, \u017ce w takich przypadkach silnik rekomendacji nie zawsze znajdzie wymagan\u0105 liczb\u0119 produkt\u00f3w spe\u0142niaj\u0105cych warunki dopasowania do rekomendacji.<\/b><\/p>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"intercom-interblocks-subheading intercom-interblocks-align-left\">\n<h2 id=\"h_8841fb6879\">6. Identyfikacja transakcji z rekomendacji<\/h2>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Identyfikacja transakcji jako ta dokonana z rekomendacji QON jest mo\u017cliwa na dwa sposoby:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><code>przeklik poprzez c.php<\/code>, kt\u00f3ry wygenerowany jest automatycznie z systemu i zwr\u00f3cony w kluczu <code>url<\/code> w rekomendacjach:<br \/>\n\u200b<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>{\r\n    \"id\": \"198464\",\r\n    \"title\": \"Example product title\",\r\n    \"image\": \"https:\/\/example.com.pl\/media\/catalog\/product\/cache\/ab49daceb272271aaf5653f0616d75be\/4\/f\/4fss22tfshf037-81s-w-01-main.jpg\",\r\n    \"description\": \"sizes_2\",\r\n    \/\/ wygenerowany link z przeklikiem\r\n    \"url\": \"https:\/\/rec.quartic.pl\/c.php?c=6d3e333af980102c&amp;ci=68112&amp;p=198464&amp;pid=4&amp;qdpi=lqr2&amp;qrid=ad_649d69c4d611d&amp;ss=rtb_24618&amp;url=aHR0cHM6Ly80Zi5jb20ucGwvbGVnaW5zeS1rb2xhcmtpLXRyZW5pbmdvd2Utc3p5Ymtvc2NobmFjZS1kYW1za2llLTRmLXgtYW5hLWxld2FuZG93c2thLTRmczJ0ZnNoZjAzNy04MXMuaHRtbA%3D%3D&amp;k=6543234567\",\r\n    \r\n    \"price\": \"79,99\",\r\n    \"priceOld\": \"129,99\",\r\n    \"custom1\": \"https:\/\/example.com.pl\/media\/catalog\/product\/cache\/ab49daceb272271aaf5653f0616d75be\/4\/f\/4fss22tfshf037-81s-w-02-mini.jpg\",\r\n    \"custom2\": \"\",\r\n    \"custom3\": \"\",\r\n    \"custom4\": \"\",\r\n    \"status\": true,\r\n    \"trackingString\": \"eyJjIjoiNmQzZTMzM2FmOTgwMTAyYyIsImNpIjoiNjgxMTIiLCJwIjoiMTk4NDY0IiwicGlkIjoiNCIsInFkcGkiOiJscXIyIiwicXJpZCI6ImFkXzY0OWQ2OWM0ZDYxMWQiLCJzcyI6InJ0Yl8yNDYxOCJ9\"\r\n}<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>dzi\u0119ki zdarzeniu: <code>eventClick<\/code><\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"intercom-interblocks-table\">\n<table>\n<tbody>\n<tr>\n<td>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>UWAGA: <\/b>wi\u0119kszo\u015b\u0107 integracji mo\u017ce si\u0119 odby\u0107 \u2013 dzi\u0119ki przeklikowi \u2013 bez wysy\u0142ania do systemu Quarticon eventClick.<\/p>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"intercom-interblocks-subheading3 intercom-interblocks-align-left\">\n<h3 id=\"h_0eb5912837\">Wdro\u017cenie poprzez przeklik przez c.php<\/h3>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>W przypadku tej metody jedyne, co musisz wykona\u0107, to do kodu HTML do TAG\u00f3w <code>a<\/code> w atrybucie <code>href<\/code> przekaza\u0107 link, kt\u00f3ry znajduje si\u0119 w kluczu <code>url.<\/code><br \/>\n\u200b<\/p>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>&lt;a href=\"https:\/\/rec.quartic.pl\/c.php?c=6d3e333af980102c&amp;ci=68112&amp;p=198464&amp;pid=4&amp;qdpi=lqr2&amp;qrid=ad_649d69c4d611d&amp;ss=rtb_24618&amp;url=aHR0cHM6Ly80Zi5jb20ucGwvbGVnaW5zeS1rb2xhcmtpLXRyZW5pbmdvd2Utc3p5Ymtvc2NobmFjZS1kYW1za2llLTRmLXgtYW5hLWxld2FuZG93c2thLTRmczJ0ZnNoZjAzNy04MXMuaHRtbA%3D%3D&amp;k=6543234567\"&gt;\r\n    &lt;picture&gt;\r\n    ....\r\n    &lt;\/picture&gt;\r\n&lt;\/a&gt;<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Klikni\u0119cie w element spowoduje przej\u015bcie na stron\u0119, kt\u00f3ra zarejestruje klikni\u0119cie, a nast\u0119pnie przekieruje na stron\u0119 docelow\u0105. To wszystko \ud83d\ude42<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-subheading3 intercom-interblocks-align-left\">\n<h3 id=\"h_f741f75fbb\">Wdro\u017cenie poprzez eventClick<\/h3>\n<\/div>\n<div class=\"intercom-interblocks-table\">\n<table>\n<tbody>\n<tr>\n<td>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>Kiedy eventClick jest przydatny?<\/b><\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>W przypadkach, kiedy chcesz wykorzysta\u0107 silnik rekomendacyjny na przyk\u0142ad w aplikacji mobilnej (wykonanie przeklik\u00f3w jest tu problematyczne z racji opierania aplikacji na Aktywno\u015bciach) albo mocno AJAXowych sklepach, kt\u00f3re od\u015bwie\u017caj\u0105 jedynie pojedynczy kontener strony \u2013 wtedy lepiej jest skorzysta\u0107 z wy\u015bwietlania produktu bez wykonania przekliku przy jednoczesnym wyzwoleniu eventClick\u2019a.<\/p>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>Do wdro\u017cenia eventClick konieczny jest parametr <code>trackingString<\/code>, kt\u00f3ry dostaniemy wraz z wygenerowan\u0105 ramk\u0105 w kluczu <code>trackingString<\/code><\/p>\n<\/div>\n<div class=\"intercom-interblocks-subheading4 intercom-interblocks-align-left\">\n<h4 id=\"h_ea0f0c2810\"><b>Jak wyzwoli\u0107 eventClick?<\/b><\/h4>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>wys\u0142any przy u\u017cyciu POST lub GET<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>ilekro\u0107 u\u017cytkownik kliknie w rekomendowany produkt<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>zapytanie powinno mie\u0107 prawid\u0142ow\u0105 struktur\u0119 (r\u00f3\u017cn\u0105 dla metody, kt\u00f3r\u0105 je wysy\u0142amy)<\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"intercom-interblocks-subheading4 intercom-interblocks-align-left\">\n<h4 id=\"h_984b9dffcc\"><b>POST:<\/b><\/h4>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>pami\u0119tamy o podmianie warto\u015bci pola customer na prawid\u0142owy symbol klienta<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>wysy\u0142amy na adres: <a href=\"https:\/\/rest.quartic.pl\/store\/track\/event\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/rest.quartic.pl\/store\/track\/event<\/a><\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"intercom-interblocks-code\">\n<pre>{\r\n    \"productId\": \"tekst\",\r\n    \"eventType\": \"eventClick\",\r\n    \"userId\": \"tekst\", \r\n    deviceId\": \"tekst\",\r\n    \"timestamp\": \"121\",\r\n    \"referrer\": \"tekst\",\r\n    \"cookie\": \"tekst\",\r\n    \"trackingString\": \"tekst zwrocony wraz z produktem z rekomendacji\",\r\n    \"customer\": \"symbol\"\r\n}<\/pre>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>&nbsp;<\/p>\n<\/div>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>gdzie:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>id produktu <\/b>powinno by\u0107 takie samo, jak podane w procesie synchronizacji<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>userId <\/b>powinno by\u0107 zgodne z identyfikatorem u\u017cytkownika w sklepie; je\u017celi u\u017cytkownik jest niezalogowany, pole powinno pozosta\u0107 puste<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>powinno by\u0107 podane albo <b>cookie<\/b> albo <b>deviceId<\/b> gdzie:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>cookie jest zmienialnym identyfikatorem u\u017cytkownika (mo\u017cna je skasowa\u0107\/przegenerowa\u0107);<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>deviceId natomiast jest niezmienialne (numer IMEI telefonu, numer seryjny telewizora itd);<\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>referrer <\/b>mo\u017ce by\u0107:<\/p>\n<\/div>\n<div class=\"intercom-interblocks-unordered-nested-list\">\n<ul>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>prawid\u0142owym URL strony, kt\u00f3ra spowodowa\u0142a przekierowanie na produkt<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p>nazw\u0105 Activity, kt\u00f3ra zosta\u0142a wyzwolona np. na telefonie z system Android przed przej\u015bciem na produkt<\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>timestamp <\/b>\u2013 czas wyst\u0105pienia zdarzenia<\/p>\n<\/div>\n<\/li>\n<li>\n<div class=\"intercom-interblocks-paragraph no-margin intercom-interblocks-align-left\">\n<p><b>trackingString<\/b> \u2013 tekst zwr\u00f3cony wraz z danymi produktu z rekomendacji; zauwa\u017c, \u017ce ka\u017cdy produkt ma inny trackingString oraz zmienia si\u0119 on z ka\u017cd\u0105 kolejn\u0105 rekomendacj\u0105.<\/p>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<\/article>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Rozwi\u0105zanie to podobnie jak wdro\u017cenie po NPM (https:\/\/howto.quarticon.com\/pl\/articles\/6264987-wdrozenie-samodzielne-frontend-pwa-npm-api ) w ca\u0142o\u015bci odbywa si\u0119<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-862","post","type-post","status-publish","format-standard","hentry","category-rekomendacje"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/help.quarticon.com\/pl\/wp-json\/wp\/v2\/posts\/862","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/help.quarticon.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/help.quarticon.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/help.quarticon.com\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/help.quarticon.com\/pl\/wp-json\/wp\/v2\/comments?post=862"}],"version-history":[{"count":6,"href":"https:\/\/help.quarticon.com\/pl\/wp-json\/wp\/v2\/posts\/862\/revisions"}],"predecessor-version":[{"id":2452,"href":"https:\/\/help.quarticon.com\/pl\/wp-json\/wp\/v2\/posts\/862\/revisions\/2452"}],"wp:attachment":[{"href":"https:\/\/help.quarticon.com\/pl\/wp-json\/wp\/v2\/media?parent=862"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/help.quarticon.com\/pl\/wp-json\/wp\/v2\/categories?post=862"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/help.quarticon.com\/pl\/wp-json\/wp\/v2\/tags?post=862"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}