Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

  1. Klient przechodzi na stronę Merchanta. 

  2. Merchant buduje stronę sklepu z osadzonym widgetem, na którym prezentuje się informacja:

    1. Utwórz koszyk z InPost Pay” – widget osadzony na karcie produktu

      image-20240103-144248.png
    2. Kup z InPost Pay” - widget osadzony w koszyku.

      image-20240103-144310.png
  3. Klient przyciska widget “Utwórz koszyk z InPost Pay” lub „Kup z InPost Pay”.

  4. Widget weryfikuje w backend Merchanta, czy wybrany produkt może być dodany do koszyka (iziCanBeBound).

  5. Backend Merchanta przy pierwszej wywołanej metodzie przez Widget wywołuje metodę do backendu Merchanta InPost Pay w celu weryfikacji, 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. 

  6. InPost Pay zwraca informacje, że koszyk nie jest powiązany (basket_linked=false) oraz przeglądarka nie jest zaufana (browser_trusted=flase), którą backend Merchanta przekazuje do Widget.

  7. Widget weryfikuje w backend Merchanta, czy wybrany produkt może być dodany do koszyka (iziCanBeBound).Widget dodaje produkt do koszka dodaje produkt do koszyka w sklepie Merchanta (iziAddToCart).

  8. Widegt prezentuje ekran defaultowy do wiązania koszyka z wykorzystaniem numeru telefonu.

    image-20240103-144656.png
  9. Klient definiuje numer telefonu i naciska „Połącz”.

  10. 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. 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). 

  11. Widget prezentuje komunikat

    image-20240104-163351.png
  12. Klient poprzez notyfikacje push uruchamia aplikacje InPost, w której:

    1. akceptuje powiązanie koszyka 

      image-20240103-151433.png
    2. rejestruje się w InPost Pay i akceptuje powiązanie koszyka.

  13. 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.

  14. InPost Pay wiąże koszyk (id koszyka nadane przez Merchanta) z numerem telefonu.

  15. Backend Merchanta przekazuje informacje o powiązaniu koszyk do Widget (response iziGetIsBound)

  16. Widget prezentuje klientowi informacje na widget „Produkty w koszyku InPost Pay” oraz zapisuje browser_id w cookies przeglądarki.

    image-20240103-151646.png
  17. Aplikacja InPost Pay prezentuje klientowi powiązany koszyk.

    image-20240103-151734.png
  18. Widget po uzyskaniu informacji, że koszyk jest powiązany, rozpoczyna nasłuchiwać backend Merchanta (z wykorzystaniem iziGetOrderComplete i jednej z metod 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. 

    image-20240103-151826.png


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

uc_03 Wiązanie koszyka z InPost Pay z wykorzystaniem numeru telefonu.svgImage Added