Przejdź do głównej zawartości

Lifecycle sesji weryfikacyjnej

Każda sesja weryfikacyjna w DPay Web EID przechodzi przez określone stany. Zrozumienie tego cyklu jest kluczowe do prawidłowej obsługi integracji.

Diagram stanów

GET/api/v1/verifications/{id}Odpytaj bieżący status sesji: pola stanu, TTL i znaczniki czasu.Pełny kontrakt w API Reference

Statusy sesji

StatusOpisStan terminalny
createdSesja utworzona, oczekuje na rozpoczęcie przez użytkownikaNie
pendingUżytkownik otworzył link weryfikacyjnyNie
processingTrwa proces weryfikacji u dostawcyNie
completedSesja zakończona pozytywnie - dostępny resultTak
failedSesja zakończona niepowodzeniemTak
expiredSesja wygasła (timeout) lub została anulowanaTak
Stany terminalne

Sesja w stanie completed, failed lub expired jest zamknięta na trwałe. Nie można jej już anulować ani zmienić - próba DELETE /verifications/{id} zwróci błąd 409 z kodem SESSION_ALREADY_TERMINAL.

TTL sesji (czas życia)

Sesja automatycznie wygasa po określonym czasie od utworzenia, zależnie od celu (purpose):

PurposeTTLOpis
identity_verification30 minutStandardowa weryfikacja tożsamości
account_data60 minutPobranie danych rachunkowych przez AIS/PSD2

Po przekroczeniu TTL status sesji zmienia się automatycznie na expired. Webhook verification.expired zostanie wysłany do skonfigurowanych endpointów.

Przejścia między stanami

ZDoTrigger
createdpendingKlient otworzył verification_url
createdexpiredTimeout TTL bez otwarcia linku
pendingprocessingKlient zainicjował weryfikację u dostawcy
pendingexpiredTimeout TTL lub DELETE /verifications/{id}
processingcompletedDostawca zwrócił pozytywny wynik
processingfailedNiepowodzenie weryfikacji (np. odrzucenie, błąd dostawcy)

Webhooks dla zmian statusu

Każde przejście do stanu terminalnego generuje odpowiedni webhook (jeśli skonfigurowany):

  • verification.completed → przejście do completed
  • verification.failed → przejście do failed
  • verification.expired → przejście do expired

Szczegóły w sekcji Webhooks - Zdarzenia.