Wybierz interesujący Cię rodzaj statusów, aby dowiedzieć się więcej o ich znaczeniu i zastosowaniu w naszym systemie.
Każda transakcja w systemie SimPay posiada swój cykl życia, który jest reprezentowany przez odpowiednie statusy. Zmiana statusu informuje o aktualnym etapie procesowania płatności – od momentu jej zainicjowania, aż po udane zakończenie, odrzucenie lub zwrot.
Poniższy diagram przedstawia możliwe ścieżki przejść pomiędzy poszczególnymi statusami transakcji w naszym API.
W odpowiedziach z naszego API status transakcji zwracany jest jako ciąg znaków (string). Poniższa tabela szczegółowo wyjaśnia znaczenie każdego z nich:
Status (enum) | Typ | Opis |
|---|---|---|
transaction_new | Procesowany | Wstępny status po utworzeniu nowej transakcji w systemie. Płatność oczekuje na dalsze kroki. |
transaction_generated | Procesowany | Klient wybrał interesującą go metodę płatności oraz przeszedł nią do zapłaty |
transaction_confirmed | Procesowany | Metoda płatności poinformowała nas o rozpoczęciu inicjacji płatności. |
transaction_paid | Sukces | Płatność została pomyślnie zrealizowana i środki zostały zabezpieczone. To główny status udanej transakcji. Można przystąpić do realizacji zamówienia |
transaction_failure | Błąd | Płatność została odrzucona (np. brak środków na koncie, odmowa autoryzacji przez bank, błąd autoryzacji 3D Secure). |
transaction_expired | Błąd / Wygaśnięcie | Upłynął czas przeznaczony na opłacenie transakcji. Ścieżka płatności zostaje bezpowrotnie zamknięta. |
transaction_refunded | Zwrot | Dokonano pomyślnego i całkowitego zwrotu (100% kwoty) na konto płatnika. |
transaction_fraud_possibility | Weryfikacja | System wykrył anomalię lub ryzyko. Transakcja wymaga dodatkowej weryfikacji przed ostatecznym zatwierdzeniem lub odrzuceniem. |
transaction_fraud | Błąd krytyczny | Transakcja została oznaczona jako oszustwo (np. kradziona karta, chargeback). Środki nie zostaną przekazane. |
Status transaction_paid jest jedynym statusem oznaczającym poprawne i ostateczne opłacenie zamówienia przez klienta ( chyba, że później nastąpi zwrot). Twoja aplikacja powinna realizować zamówienie (wydawać towar/usługę) dopiero po otrzymaniu webhooka z tym statusem.
Zmiany statusów transakcji oraz zwrotów zachodzą w naszym systemie asynchronicznie (np. po zatwierdzeniu płatności przez bank). Aby Twoja aplikacja mogła natychmiast zareagować na te zmiany – na przykład wydać klientowi zakupiony towar – udostępniamy dwa sposoby synchronizacji:
Powiadomienia IPN – jest to rekomendowana, najszybsza i najbezpieczniejsza metoda. Za każdym razem, gdy transakcja zmieni swój status, SimPay wyśle automatyczne powiadomienie (żądanie POST) na skonfigurowany przez Ciebie adres URL. Szczegóły dotyczące struktury tych powiadomień oraz eventów znajdziesz w sekcji: Zmiana statusu transakcji.
Weryfikacja przez API (Polling) – w dowolnym momencie możesz również samodzielnie pobrać aktualny status konkretnej operacji, wysyłając zapytanie bezpośrednio do naszego API. Dokładny opis endpointu służącego do sprawdzania statusu znajdziesz tutaj: Status transakcji.
Zalecamy opieranie logiki biznesowej (np. realizacji zamówień) przede wszystkim na powiadomieniach IPN. Odpytywanie API (polling) powinno służyć jedynie jako mechanizm awaryjny (fallback) lub do jednorazowego upewnienia się o statusie przed podjęciem kluczowych akcji.