Versions Compared

Key

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

Utworzenie zamówienia w aplikacji InPost Pay [1-8]: 

  1. Klient przechodzi na koszyk w aplikacji InPost Pay, uzupełnia wymagane dane do zamówienia (forma i adres dostawy, dane do faktury), wybiera formę płatności i inicjuje utworzenie zamówienia oraz proces płatności poprzez przycisk “Kupuję i Płacę”. 

    Image Added
  2. InPost Pay po rozpoczęciu procesu zakupu przez klienta, pobiera od Merchanta aktualny koszyk (z wykorzystaniem metody GET/v1/izi/basket/{basket_id}) i weryfikuje, czy zawartość koszyka przechowywana w InPost Pay jest zgodna z koszykiem przekazanym przez Merchanta (weryfikacja przy pomocy wyliczania hash). 

    1. Jeśli koszyk w aplikacji InPost Pay jest nieaktualny, prezentowany jest klientowi odpowiedni komunikat - koniec procesu utworzenia zamówienia na nieaktualnym koszyku. 

    2. Jeśli koszyk w aplikacji InPost Pay jest aktualny to następuje wywołanie metody POST/v1/izi/order do Merchanta w celu utworzenia zamówienia (dane przekazywane do utworzenia zamówienia: obligatoryjnie: . W request przekazywane są dane:

      1. order_details – dane do utowrzenia zamówienia (identyfikator koszyka, całkowitą wartość zamówienia, wybraną formę płatności)

      2. account_info

      , delivery, consents, fakultatywnie: invoice_details
      1. – dane użytkownika aplikacji InPost Pay

      2. invoice_details – dane do faktury

      3. delivery – formę dostawy

      4. consents – zgodny i oświadczenia wybrane przez użytkownika.

  3. Merchant w response POST/v1/izi/order po prawidłowym utworzeniu zamówienia przekazuje do InPost Pay dane: 

    1. order_details - szczegóły zamówienia (razem z nadanym order_id oraz pos_id

    2. account_info - dane o kliencie 

    3. invoice_details - dane do faktury 

    4. delivery - dane o formie dostawy zamówienia 

    5. products - lista produktów 

    6. consents - zdefiniowane zgody klienta klienta.

Opłacenie zamówienia w aplikacji InPost Pay [9-19]: 

  1. InPost Pay po otrzymaniu informacji o utworzeniu zamówienia, nadaje order_status = ORDER_PROCESSING i payment_status = UNPAID oraz rozpoczyna proces płatności, którym kolejno wraz etapami wykonania płatności przez klienta nadaje i zapisuje dane: 

    1. payment_status = STARTED - rozpoczęcie płatności przez klienta w aplikacji InPost oraz wygenerowanie i zapis danych referencyjnych płatności 

    2. payment_status = PENDING - płatność wykonana przez klienta w aplikacji InPost i oczekuje na wykonanie w bramce płatniczej 

    3. payment_status = AUTHORIZED - płatność zrealizowana z sukcesem w bramce płatniczej i zapis danych płatności w szczegółach zamówienia. 

  2. Po wykonaniu płatności z sukcesem, prezentowana jest klientowi w aplikacji InPost informacja o pomyślnym opłaceniu zamówienia oraz InPost Pay wywołuje metodę POST/v1/izi/order/{order_id}/event w celu poinformowania Merchanta o opłaceniu zamówienia. 

    Image Added
  3. Widget dla powiązanego koszyka nasłuchuje backend Merchanta (z wykorzystaniem looping lub websocket), czy nastąpiła realizacja zamówienia. W przypadku otrzymania informacji o realizacji, widget prezentuje klientowi ekran z podziękowaniem za finalizację zamówienia. 

    Image Added

Diagram UC.05 Realizacja zamówienia