Lista kontrolna integracji
Postępuj zgodnie z tą kompleksową listą kontrolną, aby skonfigurować swoje konto Zonos Dashboard i zintegrować Zonos Checkout na swojej niestandardowej stronie lub platformie.
Utwórz konto Zonos
Aby rozpocząć, prosimy skontaktować się z naszym zespołem ds. sprzedaży, aby utworzyć konto i podpisać umowę. Po podpisaniu umowy otrzymasz dwie małe wpłaty na swoje konto, które należy zweryfikować.
Prosimy wysłać kwoty tych małych wpłat na adres accounting@zonos.com wraz z identyfikatorem sklepu Dashboard (CC twojemu przedstawicielowi ds. sprzedaży).
Po weryfikacji twoje dane bankowe będą wyświetlane w Dashboard -> Settings -> Billing.
Skonfiguruj ustawienia Dashboard i Checkout
Po utworzeniu konta Zonos musisz skonfigurować ustawienia w Dashboard, aby upewnić się, że Checkout działa prawidłowo w twojej witrynie. Ta sekcja obejmuje wszystkie niezbędne konfiguracje Dashboard.
Skonfiguruj wypłaty
Połącz konto bankowe, aby otrzymywać terminowe wypłaty z Checkout. Wypłaty są przetwarzane codziennie w ciągu 2 dni od przechwycenia płatności. Aby to zrobić, postępuj zgodnie z poniższymi krokami:
- Przejdź do Dashboard -> Settings -> Checkout settings .
- Kliknij Add bank account
- Zostaniesz przeniesiony do portalu Stripe, aby ukończyć konfigurację i podać następujące informacje:
- Informacje o koncie bankowym.
- EIN firmy.
- Numer ubezpieczenia społecznego właściciela firmy posiadającego 25% udziałów. Aby uzyskać więcej szczegółów na temat przyczyn tego wymogu, zapoznaj się z dokumentacją Stripe.
Uwaga: Jeśli chcesz zaktualizować harmonogram wypłat, skontaktuj się z support@zonos.com
Skonfiguruj dozwolone domeny
Skrypt JS Zonos wymaga listy dozwolonych domen ze względów bezpieczeństwa. Zapobiega to ładowaniu skryptu przez nieautoryzowane witryny i zapewnia, że działa tylko na zatwierdzonych domenach. Bez tej konfiguracji skrypt zwróci błędy uprawnień.
Aby to skonfigurować:
- Przejdź do Dashboard -> Settings -> Checkout settings
- W sekcji URLs dodaj swoją pełną domenę i dowolne subdomeny, w których będzie używany Checkout. Na przykład, jeśli twoja domena to
example.com, powinieneś dodaćexample.comitest.example.com.
Dostosuj ustawienia brandingu
Skonfiguruj ustawienia brandingu w Dashboard, aby pasowały do wyglądu i stylu swojej witryny.
Aby to zrobić, postępuj zgodnie z poniższymi krokami:
- Przejdź do Dashboard -> Settings -> Checkout settings -> Branding
- Skonfiguruj poniższe ustawienia:
- Logo.
- Kolor marki i akcentu.
- Motyw, styl i czcionka.
Aby uzyskać więcej informacji na temat ustawień brandingu, zapoznaj się z naszą dokumentacją.
Połącz operatora wysyłkowego
Aby podać ceny wysyłki przy kasie, musisz połączyć operatora wysyłkowego z kontem Zonos. To umożliwi Ci włączenie określonych poziomów usług wysyłkowych przy kasie.
Aby połączyć operatora wysyłkowego, postępuj zgodnie z poniższymi krokami:
- Przejdź do Dashboard -> Settings -> Shipping -> Rates
- Kliknij Add carrier
- Postępuj zgodnie z instrukcjami konfiguracji operatora.
Aby uzyskać więcej szczegółów na temat połączania kont operatorów, zapoznaj się z naszą dokumentacją.
Skonfiguruj strefy wysyłkowe
Strefy wysyłkowe umożliwiają skonfigurowanie, którzy operatorzy wysyłkowi i poziomy usług są dostępne dla różnych regionów świata.
Aby skonfigurować strefy wysyłkowe, postępuj zgodnie z poniższymi krokami:
- Przejdź do Dashboard -> Settings -> Shipping -> Locations
- Kliknij New zone
- Wprowadź nazwę strefy i wybierz kraje, do których chcesz wysyłać.
- Wybierz operatora i poziom usługi, który chcesz oferować.
Aby uzyskać więcej szczegółów na temat stref wysyłkowych, zapoznaj się z naszą dokumentacją.
Skonfiguruj rezerwową kraj pochodzenia i kod HS
Kraj pochodzenia i kod HS są używane do obliczenia dokładnych cła i podatków.
Jeśli nie podasz określonego kraju pochodzenia lub kodu HS, użyjemy rezerwowych ustawień skonfigurowanych w Dashboard.
Aby ustawić rezerwowy kraj pochodzenia i kod HS:
- Przejdź do Dashboard -> Settings -> Shipping -> Catalog.
- W przypadku kraju pochodzenia wybierz kraj, w którym wytwarzana jest większość twoich produktów.
- W przypadku kodu HS wprowadź kod HS swojego najpopularniejszego produktu. Jeśli nie masz kodu HS, przejdź do Classify w Dashboard i wprowadź nazwę i opis swojego produktu, aby wygenerować dokładny kod HS.
Zainstaluj fragment JS Zonos
Fragment JS Zonos to integracja JavaScript po stronie klienta, która włącza globalną funkcjonalność kasy na twojej stronie. Służy jako most między twoją platformą e-commerce a usługami Zonos, obsługując:
- Checkout Experience: Renderuje interfejs kasy i przetwarza płatności.
- Location Services: Wykrywa lokalizację odwiedzającego i zarządza konwersją walut.
- Cart Integration: Łączy się z istniejącym wózkiem i systemem zamówień.
- Security: Weryfikuje domeny i uwierzytelnia żądania API.
Fragment jest ładowany asynchronicznie, aby zapobiec jakimkolwiek wpływom na wydajność witryny. Inicjalizuje się za pomocą poświadczeń API sklepu i obsługuje wszystkie interakcje po stronie klienta w bezpieczny sposób. Wdrożenie ma być nietechniczną, wymagając minimalnych zmian w istniejącym przepływie kasy.
Poniżej znajduje się kompletny przykład obejmujący ładowanie skryptu, inicjalizację i obsługę zdarzeń, do którego należy odwołać się podczas integracji Checkout.
(async function () { const timestamp = new Date().getTime(); const zonosScript = document.querySelector( `script[src*="https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/loadZonos.js"]`, ); if (!zonosScript) { const script = document.createElement('script'); script.src = `https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/loadZonos.js?timestamp=${timestamp}`; script.addEventListener('load', () => { window.Zonos.({ : { : () => { { : , }; }, : , }, : { : , : { .(); }, }, : , : , }); }); ..(script); } })();Uwaga: Zastąp wartości zastępcze (storeId, zonosApiKey, selektory itp.) swoimi rzeczywistymi wartościami z panelu Zonos Dashboard.
Obsługa buforowania przeglądarki
Zalecamy dołączenie sygnatury czasowej lub innego unikatowego identyfikatora do adresu URL, aby zapewnić, że skrypt nie jest buforowany przez przeglądarkę. Zapewni to, że zawsze ładowana jest najnowsza wersja skryptu. Pokazano to w linii 10 kompletnego przykładu.
script.src = `https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/loadZonos.js?timestamp=${timestamp}`;Uwierzytelnij fragment JS Zonos
Po załadowaniu skryptu JS Zonos musisz go uwierzytelnić, przekazując publiczny klucz API Zonos i identyfikator sklepu do funkcji Zonos.init. Publiczny klucz API używany do uwierzytelniania Checkout został zaprojektowany tak, aby był publikowalny, co oznacza, że można go bezpiecznie używać w kodzie frontendowym bez ujawniania poufnych informacji.
Aby znaleźć identyfikator sklepu i klucz API, przejdź do Dashboard -> Settings -> Integrations. Upewnij się, że nie używasz Secret API key, ponieważ nie jest on przeznaczony do użytku w kodzie frontendowym. Pokazano to w wierszach 29 i 30 kompletnego przykładu.
Zonos.init({ // ... other fields zonosApiKey: 'Your API KEY', // Replace with your actual API key (found in Dashboard) storeId: 'Your STORE ID', // Replace with your actual store ID (found in Dashboard) // ... other fields});Zaktualizuj swoją politykę bezpieczeństwa zawartości (CSP)
Jeśli witryna ustawia Content Security Policy, dodaj domeny poniżej do odpowiednich dyrektyw CSP. Ta polityka dotyczy zarówno Checkout, jak i Hello — fragment Zonos ładuje skrypty, arkusze stylów, czcionki, obrazy i wysyła żądania sieciowe, więc zablokowanie któregokolwiek z tych zasobów spowoduje przerwanie przepływu Checkout lub wyświetlania Hello. Lista style-src dotyczy również style-src-elem.
Uwaga: Pomiń ten krok, jeśli witryna nie wysyła nagłówka CSP. Tylko sprzedawcy, którzy wymuszają niestandardową CSP na swoich stronach, muszą ją zaktualizować.
cdn.jsdelivr.net/npm/@zonoscdnjs.cloudflare.com/ajax/libs/zonos-elementsunpkg.com/@zonos/elementsjs.zonos.com*.js.zonos.comzonos-store-assets.s3.amazonaws.comjs.stripe.coma.stripecdn.comb.stripecdn.comc.stripecdn.comcheckout.stripe.comf.stripecdn.comhcaptcha.comhooks.stripe.comm.stripe.comm.stripe.networkpay.stripe.compayments.stripe.comq.stripe.comr.stripe.comSkonfiguruj Hello
Hello jest wymagany podczas korzystania z Checkout.
Hello odpowiada za wykrycie lokalizacji, języka i waluty odwiedzającego oraz wyświetlenie mu odpowiednich informacji. Możesz skonfigurować wszystkie ustawienia Hello w Dashboard lub w skrypcie JS Zonos. Jeśli Hello zostało już skonfigurowane w Dashboard, skrypt załaduje te ustawienia i ich użyje. Jeśli określisz jakieś wartości we właściwości helloSettings funkcji Zonos.init, skrypt zamiast tego użyje tych wartości, jak pokazano poniżej.
Skonfiguruj konwersję waluty w Hello w skrypcie JS
Hello używa selektorów CSS do identyfikacji elementów na twojej stronie, które wyświetlają informacje o walutach. Przekaż te selektory do właściwości helloSettings.currencyElementSelector funkcji Zonos.init, aby Hello mogło wykryć i wyświetlić prawidłową walutę kupującego międzynarodowego.
Możesz tutaj użyć dowolnego prawidłowego selektora CSS, na przykład #price, .price do wyboru wielu różnych elementów. Pokazano to w wierszach 23 i 24 kompletnego przykładu.
Zonos.init({ // ... other fields helloSettings: { currencyElementSelector: '.price', // Replace with your actual selector }, // ... other fields});Automatycznie otwórz Hello przy załadowaniu strony
Domyślnie Hello otworzy się tylko po kliknięciu przez odwiedzającego przycisku flagi. Jeśli chcesz automatycznie otworzyć Hello po załadowaniu strony, możesz wywołać funkcję Zonos.openHelloDialog() po załadowaniu skryptu Zonos. Pokazano to w wierszach 25 i 26 kompletnego przykładu.
Zonos.init({ : { : { .(); }, },});Skonfiguruj reguły wyświetlania krajów w Dashboard
Kontroluj, które kraje kupującego widzą Hello i które kraje pojawiają się w rozwijaniu selektora kraju z Dashboard. Przejdź do Dashboard -> Settings -> Hello i znajdź sekcję Country display rules.
Widoczność widżetu
Kontroluj, które kraje kupującego widzą widżet Hello. Wybierz jedną z podstawowych reguł, a następnie użyj list Always show i Never show, aby zastąpić określone kraje.
- All countries - Każdy kraj, który Hello obsługuje.
- Only shippable countries - Kraje, do których wysyłasz z twoich ustawień wysyłkowych.
- Always show - Kraje, które zawsze pojawiają się, nawet jeśli reguła podstawowa je wyklucza.
- Never show - Kraje, które nigdy się nie pojawiają, nawet jeśli reguła podstawowa je zawiera.

Selektor krajów
Kontroluj, które kraje pojawiają się w rozwijaniu selektora kraju Hello, używając tych samych podstawowych reguł plus zastąpienia Always show i Never show.

Skonfiguruj Checkout
Checkout odpowiada za umożliwienie klientowi wprowadzenia informacji dotyczących wysyłki i rozliczenia, obliczenia kosztów landingu, pobrania płatności i ukończenia zamówienia.
Checkout będzie dzielić dane kontekstowe z Hello, takie jak lokalizacja, język i waluta odwiedzającego. Zapewnia to spójność doświadczenia klienta na całym procesie zakupów.
Możesz skonfigurować wszystkie ustawienia Checkout zarówno w Dashboard, jak i w skrypcie JS Zonos. Jeśli Checkout został już skonfigurowany w Dashboard, skrypt załaduje te ustawienia i ich użyje. Jeśli określisz jakieś wartości we właściwości checkoutSettings funkcji Zonos.init, skrypt zamiast tego użyje tych wartości.
Skonfiguruj przycisk „place order" w skrypcie JS
Skrypt JS Zonos automatycznie rozpozna kupujących międzynarodowych i skieruje ich do przepływu Checkout. Jednak musisz skonfigurować przycisk „place order" na swojej platformie, aby otwierał Checkout po kliknięciu. Można to zrobić, przekazując selektor CSS do właściwości checkoutSettings.placeOrderButtonSelector funkcji Zonos.init.
Jeśli masz wiele przycisków, które można użyć do złożenia zamówienia, upewnij się, że przechodzisz selektor dla każdego przycisku. Na przykład #placeOrder, .place-order.
Pokazano to w wierszu 21 kompletnego przykładu.
Zonos.init({ // ... other fields checkoutSettings: { // ... other fields placeOrderButtonSelector: '#placeOrder', // Replace with your actual selector(s) },});Bezpiecznie utwórz szczegóły koszyka po stronie serwera
Aby wyświetlić szczegóły koszyka klientowi, musisz utworzyć funkcję po stronie serwera, która wywoła API Zonos, aby utworzyć koszyk, a następnie przekaże ten identyfikator koszyka do frontendu. Zapewni to, że szczegóły koszyka nie są ujawniane klientowi w taki sposób, aby mogły być manipulowane.
Twoje wywołanie API backendu będzie używać tajnego tokenu poświadczeń GraphQL, który różni się od publicznego tokenu używanego do uwierzytelniania skryptu JS Zonos. Ten token można pobrać w Dashboard -> Settings -> Integrations. Tajny token musi zostać przekazany jako nagłówek w twoim wywołaniu API.
Mutacja cartCreate akceptuje listę elementów, które powinny być sformatowane zgodnie z schematem elementu koszyka.
// Create new cart from serversideasync function createCart() { /** * Full cart mutation schema: https://zonos.com/developer/mutations/cartCreate * */ const graphql = JSON.stringify({ query: `mutation cartCreate($input: CartCreateInput!){ cartCreate(input: $input) { id adjustments { amount currencyCode description productId sku type } items { id name amount currencyCode quantity sku description metadata { key value } } metadata { key value } }}`, variables: { /** * input for the cartCreate is this schema https://zonos.com/developer/types/CartCreateInput */ input: { /** * Cart adjustment input: https://zonos.com/developer/types/CartAdjustmentInput */ adjustments: [ { amount: -10, currencyCode: 'USD', /** * Enum value: https://zonos.com/developer/types/CartAdjustmentType */ type: 'CART_TOTAL', }, ], /** * Cart item input: https://zonos.com/developer/types/ItemInput */ items: [ { name: 'Item 1', amount: 150.99, currencyCode: 'USD', description: 'Item 1 description', quantity: 2, }, ], /** * Cart metadata input: https://zonos.com/developer/types/CartMetadataInput */ metadata: [ { : , : , }, ], }, }, }); response = (, { : , : { : , : , }, : graphql, }); { data } = response.(); data..; }Sugerujemy utworzenie punktu końcowego API na serwerze, a następnie wywołanie tego punktu końcowego z integracji frontendu JS, co zostało szczegółowo opisane w następnym kroku.
Przekaż identyfikator koszyka do Checkout za pośrednictwem frontendu
Po utworzeniu koszyka po stronie serwera musisz przekazać identyfikator koszyka do skryptu JS Zonos. Można to zrobić za pomocą callback createCartId, który jest częścią funkcji Zonos.init. Checkout będzie wtedy bezpiecznie pobierać szczegóły koszyka z Zonos po otwarciu, zapobiegając jakimkolwiek manipulacjom koszykiem. Patrz poniższy przykład kodu.
Wartość createCartId nie może być wartością statyczną, musi być funkcją.
Zonos.init({ // ... other fields checkoutSettings: { // Replace with your actual selector(s) createCartId: async () => { const response = await fetch('https://api.merchant.com/api/get-cart', { method: 'POST', headers: { 'Content-Type': 'application/json', }, }); const json = await response.json(); return json.id; // Only need to return the cart ID }, },});(Opcjonalnie) Wyświetl powiadomienie pod razem zamówienia
Jeśli chcesz wyświetlić krótką, dynamiczną wiadomość w Checkout — na przykład ujawnienie regulacyjne, gdy określony produkt jest w koszyku — możesz zwrócić tablicę customMessage z callback createCartId. Każdy wpis w tablicy jest renderowany w jego własnym wierszu baneru informacyjnego bezpośrednio pod Order total.
Składnia linku Markdown — [link label] następnie (https://example.com) — jest renderowana jako tag kotwicy, więc kupujący mogą kliknąć. Zwykłe adresy URL https:// w tekście są również automatycznie łączone. Wszystko inne jest renderowane jako zwykły tekst, więc HTML w ciągach jest zmieniony zamiast wykonywany.
Tylko jeden baner jest pokazany na Checkout, niezależnie od tego, ile linii przejdziesz.
Zonos.init({ // ... other fields checkoutSettings: { createCartId: async () => { const response = await fetch( 'https://api.merchant.com/api/get-zonos-cart', { method: 'POST', headers: { 'Content-Type': 'application/json', }, }, ); const json = await response.json(); return { cartId: json.id, // Each item is rendered on a new line of the same info banner. // Markdown links `[text](url)` become `<a>` tags. customMessage: [ 'Some items in your cart are subject to California regulations.', 'Please review the required notice [here](https://oag.ca.gov/prop65).', ], }; }, },});Uwaga: Tekst wiadomości jest renderowany jako zwykły tekst — tagi HTML w ciągach są zmieniane, więc tylko składnia linku Markdown jest interpretowana. Zdecyduj, czy dołączyć
customMessagepo stronie serwera w zależności od zawartości koszyka, aby baner pojawił się tylko gdy jest to istotne.
(Opcjonalnie) Programowo wyzwól kasę Zonos
Jeśli masz niestandardową logikę i chcesz wyzwolić kasę Zonos programowo, możesz użyć funkcji Zonos.triggerCheckoutInternational(), aby otworzyć okno kasy Zonos po zainicjowaniu Zonos. To wywoła callback createCartId zdefiniowany w Zonos.init powyżej i otworzy okno kasy Zonos.
// For example: During your domestic checkout flow, trigger Zonos checkout when the user selects a non-domestic country (e.g., not "US")const domesticCountry = 'US';document.querySelector('.country-select').addEventListener('change', e => { const country = e.target.value; if (country !== domesticCountry) { Zonos.triggerCheckoutInternational(); }});(Opcjonalnie) Zawsze wyzwól selektor kasy Zonos
Jeśli chcesz oddzielić proces kasy dla kupujących krajowych i międzynarodowych, możesz dodać przycisk International checkout do swojej witryny. Zamiast ręcznego wyzwalania Checkout Zonos za pomocą Zonos.triggerCheckoutInternational, możesz skonfigurować Zonos.init za pomocą odpowiedniego selektora. Selektor będzie wyłączony do zainicjowania Zonos, gdy przycisk zostanie kliknięty, automatycznie wyzwoli kasę Zonos. To wywoła callback createCartId zdefiniowany w Zonos.init i otworzy okno kasy Zonos.
Zonos.init({ // ... other fields checkoutSettings: { // ... other fields alwaysTriggerInternationalCheckoutSelector: '#trigger-zonos-checkout', // Replace with your actual selector, button bound to this selector will always trigger Zonos checkout },});(Opcjonalnie) Śledź lejek kasy za pomocą GA4 lub Facebook Pixel
Zonos Checkout może przekazywać pełny lejek kasy do twoich istniejących narzędzi analityki. Na każdym kroku Zonos emituje:
- Oryginalne zdarzenie
zonos-checkout-...do GA4 (poprzezgtag('event', ...)) i do Meta jako zdarzenie niestandardowe (poprzezfbq('trackCustom', ...)). - Pasujące zdarzenie standardowe do Meta, gdy istnieje —
InitiateCheckout,AddPaymentInfoiPurchase— aby optymalizacja wbudowana Meta i raportowanie konwersji działały od razu.
Sposób, w jaki zdarzenia trafiają do dostawców, zależy od tego, jak Checkout jest renderowany na twojej stronie. Wybierz ścieżkę, która pasuje do twojej integracji.
Integracja natywna (Checkout renderuje się bezpośrednio na twojej stronie)
Gdy element niestandardowy <zonos-checkout> jest zamontowany na twojej własnej stronie (domyślnie dla integracji skryptu JS Zonos opisanej powyżej), window.gtag i window.fbq strony są już w zasięgu. Zonos wywołuje je bezpośrednio — nie jest potrzebny relay ani przekazywanie identyfikatora piksela.
Konfiguracja:
- Upewnij się, że twoja strona ma już załadowany GA4 base tag i/lub Meta Pixel base code (w taki sam sposób, w jaki śledzisz dowolną inną stronę na twojej stronie).
- Włącz dostawców, którzy Cię interesują, na pulpicie Zonos w sekcji Checkout settings → Tracking (Google Analytics, Facebook Pixel lub oba).
To wszystko. Brak skryptu relay, brak customHTML, brak dodatkowych identyfikatorów do przekazania — Zonos wykrywa gtag / fbq na stronie i uruchamia zdarzenia bezpośrednio.
Integracja iframe (starszy iframe Checkout na iglobalstores.com)
Gdy Checkout jest hostowany w iframe na innym pochodzeniu, nie może bezpośrednio dotrzeć do gtag / fbq twojej strony. Zonos publikuje mały skrypt relay — analyticsRelayOnInit.js — który słucha zdarzeń postMessage z iframe Checkout i przekazuje je dostawcom, którzy masz na swojej stronie. Pojedynczy relay obsługuje zarówno GA4, jak i Facebook Pixel jednocześnie.
Konfiguracja:
- Włącz dostawców, którzy Cię interesują, na pulpicie Zonos w sekcji Checkout settings → Tracking.
- Dodaj GA4 base tag i/lub Meta Pixel base code do
<head>strony, która hostuje iframe Checkout. - Dodaj skrypt relay po tagach dostawcy:
async src="https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/analyticsRelayOnInit.js">- Przekaż odpowiadające identyfikatory poprzez
customHTMLCheckout, aby relay wiedział, którą właściwość/piksel ma uruchomić:
window.Zonos.googleAnalyticId = 'G-XXXXXXXXXX'; window.Zonos.facebookPixelId = 'YOUR_PIXEL_ID';Aby uzyskać instrukcje krok po kroku dla iframe, pełne odniesienie zdarzeń (w tym mapowanie ładunku purchase / Purchase) i porady dotyczące debugowania, patrz:
Zsynchronizuj śledzenie zamówień i status na Dashboard
Aby zsynchronizować zamówienia między twoim systemem a Zonos Dashboard, wdróż te wywołania API i webhooki:
Wymagane mutacje
| Mutation↕ | Description↕ |
|---|---|
orderUpdateAccountOrderNumber | Syncs your native account number with Dashboard. Docs → |
orderAddTrackingNumber | Required only if you're not printing labels in Dashboard. Ensures tracking shows in Dashboard so Zonos can guarantee your landed cost calculations. Docs → |
Wymagane webhooki
Przetestuj swoją integrację
Przed wdrożeniem integracji Checkout na stronie, ważne jest dokładne przetestowanie wszystkich aspektów integracji, aby zapewnić gładkie doświadczenie klienta. Obejmuje to testowanie przepływu kasy, przetwarzania płatności, tworzenia zamówień i funkcjonalności webhooków.
Postępuj zgodnie z naszym przewodnikiem testowania, aby zweryfikować, że twoja integracja działa prawidłowo i aby zidentyfikować i naprawić wszelkie problemy przed uruchomieniem na produkcję.
Częste pytania
Poniżej znajdują się niektóre typowe pytania dotyczące procesu integracji.
Jak Zonos obsługuje potwierdzenie zamówienia?
Skonfiguruj doświadczenie po zakupie w Dashboard -> Settings -> Checkout settings w sekcji Success page type. Dostępne są trzy opcje:
- Show Zonos success page (domyślna, rekomendowana) — Zonos wyświetla wbudowaną stronę dziękowania po złożeniu zamówienia. Strona jest zawsze pokazywana, nawet jeśli zamówienie nie zostanie zaimportowane do twojego systemu, więc kupujący zawsze otrzymuje potwierdzenie.
- Redirect to a success page — Zonos czeka na krótkim ekranie „Order complete", dopóki zamówienie nie zostanie utworzone, a następnie przekierowuje na skonfigurowany adres URL sukcesu z
zOrderNumber(iorderIddla starszych koszyków) dołączonym jako parametry zapytania. - Close the checkout modal — Zonos zamyka modał po przechwyceniu płatności. Jeśli także skonfigurujesz adres URL sukcesu, Zonos przekierowuje do tego adresu URL natychmiast po pobraniu płatności przez Stripe — bez czekania na utworzenie zamówienia — i dołącza
zonosCheckoutSessionIdjako parametr zapytania. Użyj tej opcji, gdy chcesz najszybszego przekazania do twojej własnej strony sukcesu.
Wyszukiwanie zamówienia z zonosCheckoutSessionId
Gdy używasz Close the checkout modal z adresem URL przekierowania, zamówienie może potrwać kilka sekund, aby dołączyć do sesji kasy po przekierowaniu. Przeczytaj zonosCheckoutSessionId z adresu URL i sonduj zapytanie GraphQL checkoutSession z serwera za pomocą tajnego tokenu poświadczeń, dopóki zamówienie nie będzie gotowe. Nigdy nie wywołuj tego z przeglądarki — tajny token poświadczeń musi pozostać po stronie serwera.
query getCheckoutSession($id: String!)checkoutSession )orderidWyślij zapytanie do https://api.zonos.com/graphql ze swoim tajnym tokenem poświadczeń z Dashboard -> Settings -> Integrations przekazanym jako nagłówek żądania credentialToken.
Czy mogę być powiadamiany, gdy zostanie utworzone zamówienie?
Tak. Jeśli chcesz otrzymać powiadomienia o utworzeniu zamówienia, w Dashboard w sekcji Email Checkout settings możesz wprowadzić adres e-mail członków zespołu, którzy powinni być powiadamiani o utworzeniu, wysłaniu lub anulowaniu zamówienia.
Integracja niestandardowa
Zbuduj end-to-end integrację Checkout na swojej niestandardowej stronie.