Przejdź do treści
Integracja: Shopify

Conversions API dla Shopify, z zamówień sklepu

Ktoś na r/FacebookAds opisał natywną integrację Shopify z Metą słowami „jakby trzy razy” (o liczbie zakupów). Dubel bierze się z kilku dróg tego samego zakupu. Basketly czyta zakup z zamówienia przez API sklepu i wysyła go do Mety z serwera, a bilans zakupów pokazuje, ile faktycznie przyjęła Meta.

Demo ma przykładowe dane; login przychodzi na Twój e-mail.

Skąd bierze się dubel zakupu

Pixel w przeglądarce i wysyłka z serwera to dwie drogi tego samego zakupu. Meta policzy go raz tylko wtedy, gdy oba zdarzenia mają ten sam identyfikator. Gdy w sklepie działa kilka narzędzi, które wysyłają zakup, łatwo o dubel i trudno go znaleźć. Dlatego Basketly zawsze wysyła zakup z jednym, stałym identyfikatorem, a Bilans zakupów pokazuje zamówienia sklepu obok zakupów przyjętych przez Metę.

Co robi Basketly w Shopify

Podajesz adres sklepu (*.myshopify.com), token dostępu z własnej aplikacji (custom app) utworzonej w sklepie i klucz API tej aplikacji. Resztę robi panel.

  • Zapisanie sprawdza dostęp odczytem sklepu, jednego zamówienia i jednego produktu. Odmowa jest nazwana: zły token, zamrożony sklep albo brak uprawnień read_orders, read_products lub read_customers.
  • Z kluczem API aplikacji panel zapisuje się na zamówienia i produkty (zamówienie utworzone i zmienione, produkt utworzony, zmieniony i usunięty) i przyjmuje powiadomienie tylko z poprawnym podpisem i właściwą domeną sklepu. Bez klucza zamówienia przychodzą z odczytem co 15 minut.
  • Opłacone, nieanulowane zamówienie staje się zakupem: wartość, waluta, produkty z pozycji, e-mail, telefon (haszowane przed wysyłką), IP kupującego z zamówienia. Zamówienie anulowane, zwrócone w całości albo unieważnione nie jest wysyłane.
  • Każdy zakup jest najpierw zapisany, a potem wysyłany z ponawianiem. Gdy Meta ma awarię, zakup czeka, a nie ginie.
  • Produkty ze Shopify (tytuł, opis, link ze sklepu, zdjęcie, cena i cena przed obniżką, SKU, kod kreskowy, dostawca jako marka, stan) trafiają do ekranu Produkty z diagnozą pod Google Merchant Center i katalog Mety, a stamtąd do poprawionego feedu.
  • Limity Shopify są respektowane: po odmowie z powodu limitu zadanie czeka i wraca.

Podłączenie Shopify w 4 krokach

Zajmuje kilka minut. Nie potrzebujesz programisty, ale dodasz własną aplikację w sklepie.

  1. Utwórz własną aplikację w Shopify

    W sklepie utwórz własną aplikację (custom app) z dostępem do odczytu zamówień, produktów i klientów. Zapisz token dostępu Admin API (shpat_…) i klucz API aplikacji.

  2. Dodaj sklep w panelu

    W Basketly otwórz Integracje → Źródła danych → Dodaj źródło, wybierz Shopify i podaj nazwę oraz adres sklepu. Z menu źródła otwórz połączenie z API, wpisz adres *.myshopify.com, token i klucz API aplikacji, zaznacz statusy kupione i potwierdź podstawę prawną przekazywania danych.

  3. Podłącz Metę i dodaj atrybut z instrukcji

    Zaloguj się kontem Meta, wybierz zbiór danych (Pixel) i zostaw przepływ zakupów ze sklepu do Mety. Instrukcja podłączenia pokazuje skrypt dla sklepu i atrybut koszyka z identyfikatorem.

  4. Sprawdź pierwszy zakup

    Kliknij „Pobierz teraz”, wyślij Zdarzenie testowe z kodem z Events Managera, a po pierwszych zamówieniach zajrzyj do Bilansu zakupów.

Płatność za pobraniem i statusy

Zamówienie ze statusem płatności PAID jest kupione od razu. Przy płatności za pobraniem Shopify zwykle trzyma PENDING, więc przy podłączeniu możesz zaznaczyć PENDING, AUTHORIZED albo PARTIALLY_PAID jako kupione. Anulowane, w pełni zwrócone (REFUNDED) i unieważnione (VOIDED) zamówienia nie stają się zakupem. Pamiętaj o limicie Mety: zakup starszy niż 7 dni nie zostanie przyjęty.

Połączenie zakupu z wizytą i historia

Instrukcja podłączenia dodaje do koszyka atrybut z identyfikatorem skryptu Basketly. Zakup niesie wtedy to, co skrypt widział podczas wizyty, ale tylko po zgodzie kupującego, bo skrypt działa dopiero wtedy. Historia zamówień z 24 miesięcy wczytuje się raz; bez uprawnienia read_all_orders Shopify udostępnia tylko ostatnie 60 dni. Z jednego zamówienia czytane jest do 25 pozycji, a suma zamówienia jest zawsze pełna.

Jak sprawdzić, że to działa

  • Zdarzenie testowe: jednym kliknięciem wysyłasz najnowszy zakup ze sklepu z kodem testowym z Events Managera i widzisz go w zakładce Test Events.
  • Bilans zakupów: zamówienia sklepu obok zakupów przyjętych przez Metę, dzień po dniu, z najczęstszymi powodami błędów.
  • Autodiagnostyka: porównuje statystyki zbioru danych w Mecie z tym, co naprawdę wysłaliśmy, i podpowiada, co poprawić.
  • Zamówienia: przy każdym zamówieniu widać, czy zakup został przyjęty, nie przeszedł, czy czeka.

Czego to nie zrobi

  • Nie wyłącza natywnej integracji Shopify ani innych aplikacji. Jeśli któraś też wysyła zakup z serwera, masz dwie serwerowe drogi tego samego zakupu: zostaw jedną albo zadbaj o ten sam identyfikator zdarzenia i sprawdź wynik w Events Managerze.
  • Nie zastępuje Pixela w przeglądarce: zdarzenia takie jak oglądanie produktu czy dodanie do koszyka zostają po stronie sklepu. To druga, niezależna droga dla zakupów.
  • Bez skryptu Basketly w sklepie i zgody kupującego Meta nie dostanie identyfikatora kliknięcia reklamy, więc przypisanie zakupu do reklamy bywa słabsze.
  • Nie wyrówna liczb Mety i sklepu: Meta liczy zakupy po swoich oknach atrybucji. Pokazujemy obie liczby obok siebie.
  • Nie wyśle zakupu starszego niż 7 dni i nie działa bez potwierdzonej podstawy prawnej sklepu.
Integracja: Shopify

Najczęstsze pytania

Nie ma tu Twojego pytania? Napisz do nas

Nie musisz. To, co robi ta integracja, zostaje po stronie sklepu, a Basketly dodaje zakup z zamówienia jako drugą drogę. Jeśli oba kanały wysyłają ten sam zakup, Meta policzy go raz tylko wtedy, gdy mają ten sam identyfikator zdarzenia. Serwer wysyła shopify-order-<numer zamówienia>, więc po podłączeniu sprawdź w Events Managerze, czy zakupy się nie dublują.

Dzięki niemu panel zapisuje się na webhooki Shopify i sprawdza ich podpis, więc zamówienia przychodzą od razu. Bez niego działa odczyt co 15 minut.

Tak, jeśli zaznaczysz status płatności, który liczy się jako kupiony. Zakup pójdzie po takiej zmianie, pod warunkiem że od zamówienia nie minęło 7 dni.

Pierwszy odczyt sięga 7 dni wstecz, bo starszych zakupów Meta nie przyjmie. Historia zamówień wczytuje się raz do Zamówień i Klientów, ale nie jest wysyłana do Mety.

Plan darmowy obejmuje do 100 zamówień miesięcznie, bez karty i bez limitu czasu. Limit liczy zamówienia, nie wysyłki do platform. Pozostałe plany są w cenniku.

Zacznij w mniej niż 5 minut

Połącz sklep i Metę i zobacz, ile zakupów naprawdę dociera.

  • Za darmo do 100 zamówień miesięcznie
  • Bez programisty
  • Bilans zakupów i autodiagnostyka