Lifecycle of a Prevent session
User journey
The user’s interactions with Prevent service are largely driven by Tunic Pay’s backend services. Our API serves as the source of truth for both what information the user is asked to provide and how specific warnings are displayed to the user to help to inform them about their payment and reduce the risk of fraud.
Interactions are scoped to a transaction and the whole journey through the
APP Prevent flow for one transaction is called a session. During a session,
the user will be presented with one or more InputScreens
and zero or more
WarningScreens
.
A successful Prevent session moves through the following phases:
- Open: We show the user
InputScreens
asking for additional information. - Analysing: We ask the customer to wait while there is no further
information needed from them but one or more ongoing
Analyses
. - Warning (Optional): If relevant, we show the user
WarningScreens
with further information and a choice for Acknowledgement. - Resolved: The customer has completed all
InputScreens
, acknowledged anyWarningScreens
and returned to the application.
States & the UI
During a session, the user is presented with a series of InputScreens
(open) and WarningScreens
(warning).
An InputScreen
will ask the user for additional information; a
WarningScreen
will present the user with further information our service has
been able to reveal about the transaction (e.g. picture of alleged purchase) and
ask them to acknowledge that information by either Proceeding
or Cancelling
.
Wireframe example screens
InputScreen
We need more information about your payment
WarningScreen
Lorem ipsum dolor sit amet, consectetur adipiscing elit...
It’s important to note that a session’s successfully reaching the Resolved
state does not mean that the payment is safe or that the user wishes to
continue.
The user’s acknowledgements to each WarningScreen
indicate whether or not they
wish to proceed with the payment. A Resolved
session also has an isCancelledTx
attribute which indicates if the user has chosen to cancel the payment in at
least one WarningScreen
.
Integrating the APP Prevent session
From a developer’s perspective, the most important parts in the Lifecycle are:
- Launching the Prevent session
. This places it in the
Open
state. - Handling the various terminal states in which that session might terminate.
End-to-end guides are available with sample code for the various SDKs we support.