Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Weryfikacja powiązania koszyka z InPost Pay [1-6]: 

  1. Klient przechodzi na stronę Merchanta. 

  2. Merchant buduje stronę sklepu, jednocześnie weryfikując, czy koszyk klienta jest powiązany z InPost Pay oraz czy przeglądarka z której klient aktualnie korzysta jest dodana do zaufanych. Weryfikacja następuje poprzez request GET/v1/izi/basket/{basket_id}/binding do InPost Pay. 

  3. InPost Pay zwraca informacje, że koszyk nie jest powiązany (basket_linked=false) oraz przeglądarka nie jest zaufana (browser_trusted=false). 

  4. Merchant buduje stronę sklepu z osadzonym widgetem, na którym prezentuje się informacja : “Utwórz koszyk z InPost Pay”. 

  5. Wywoływana jest metoda iziCanBeBound, która określa czy produkt może zostać dodany do koszyka.

Wiązanie z wykorzystaniem numeru telefonu [7-30]: 

  1. Klient przyciska widget “Utwórz koszyk z InPost Pay”, po którym prezentuje się klientowi ekran z wiązaniem koszyka z wykorzystaniem numeru telefonu. Klient wprowadza numer telefonu i wybiera połącz. 

  2. Widget wywołuje metodę iziGetPayData, która pobiera dane potrzebne do parowania koszyków i w której zawiera się metoda iziGetBrowserData zwracająca dane przeglądarki do backendu Merchanta, który z wykorzystaniem metody POST/v1/izi/basket/{basket_id}/binding przekazuje numer telefonu do InPost Pay. Merchant w request przekazuje dane: 

    1. basket_id - unikalny id koszyka 

    2. binding_method = PHONE 

    3. phone_number - numer telefonu wprowadzony przez klienta 

    4. binding_place - miejsce, gdzie nastąpiło wiązanie koszyka 

    5. browser - obiekt składający się z informacji dot. przeglądarki, z której następuje wiązanie 

  3. InPost Pay weryfikuje reguły bezpieczeństwa/spam wiązania dla numeru telefonu. W przypadku: 

    1. pozytywnej weryfikacji odpowiada response (202) do Merchanta oraz wysyła notyfikacje (push) na urządzenie klienta. 

    2. negatywnej weryfikacji proces wiązania koszyka jest kończony (InPost Pay zwraca kod błędu do backendu Merchanta). 

  4. Klient poprzez notyfikacje push uruchamia aplikacje InPost, w której: 

    1. akceptuje powiązanie koszyka lub

    2. rejestruje się w InPost Pay i akceptuje powiązanie koszyka

  5. InPost Pay wiąże koszyk (id koszyka nadane przez Merchanta) z numerem telefonu i przekazuje informacje do Merchanta o powiązaniu koszyka z wykorzystaniem metody POST/v1/izi/basket/{basket_id}/confirmation. Metoda wystawiona przez Merchanta w której InPost Pay przekazuje dane: 

    1. basket_id - unikalny identyfikator koszyka nadany przez merchanta 

    2. status - status wiązania [SUCCESS; REJECT

    3. inpost_basket_id - unikalny identyfikator koszyka nadany przez InPost Pay - dana wykorzystywana tylko przez widget 

    4. phone_number - numer telefonu, z którym koszyk został powiązany 

    5. browser - obiekt przekazujący informacje czy przeglądarka została dodana do zaufanych 

      1. browser_trusted - flaga informująca, czy przeglądarka została dodana do zaufanych 

      2. browser_id - identyfikatora przeglądarki zaufanej, nadany przez InPost Pay 

    6. masked_phone_number - numer maskowany 

    7. name - imię klienta 

    8. surname - nazwisko klienta 

  6. Backend Merchanta po otrzymaniu POST/v1/izi/basket/{basket_id}/confirmation potwierdzającego powiązanie koszyka z sukcesem, w response przesyła do Inpost Pay Basket Details klienta (szczegóły koszyka, na które składają się dane obligatoryjne : summary, delivery, products, consents oraz opcjonalne promo_codes, related_products). 

  7. Podczas procesu wiązania koszyka, widget rozpoczyna nasłuchiwanie backendu Merchanta (z wykorzystaniem looping lub websocket) czy backend merchant otrzymał informacje o powiązaniu koszyka (POST/v1/izi/basket/{basket_id}/confirmation). W przypadku otrzymania informacji, widget prezentuje klientowi powiadomienie o udanym powiązaniu i dokończeniu płatności za zakupy w aplikacji InPost Pay oraz zapisuje browser_id w local storage przeglądarki. 

  8. Widget po uzyskaniu informacji, że koszyk jest powiązany, rozpoczyna nasłuchiwać backend Merchanta (z wykorzystaniem looping lub websocket) czy nastąpiła realizacja zamówienia za koszyk. W przypadku otrzymania informacji o realizacji, widget prezentuje klientowi ekran z podziękowaniami za finalizację zamówienia. 

Diagram UC.03 Wiązanie koszyka z InPost Pay z wykorzystaniem numeru telefonu

  • No labels