Collect Payment
The initialization step has enabled the user to select and check out a product in the browser. You now need to collect the payment from the user.
Flow Diagram
%%{init: {'theme': 'neutral'}}%%
sequenceDiagram
autonumber
actor u as User
participant b as Browser
participant cs as Customer Server
participant dt1 as DT One
u->>+b: Open customer's webpage
note over u, dt1: UI SDK initialized and the user selects and checkouts a product.
b->>cs: Payment Hook<br/>(Session ID extracted<br/>from Session Data, Payment Details)
activate cs
cs->>b: Render Payment Page
note over b, cs: Collect payment, finalize session and redirect<br/>to Transaction status view (Session ID)
note over b,dt1: The finalize session call should happen with 1 hour of payment hook
cs->>dt1: Finalize Session<br/>(Auth, Session ID, Payment Details)
activate dt1
dt1->>cs: Finalize Session Response
deactivate dt1
cs->>b: Render Transaction Status Page
deactivate cs
deactivate b
Steps
After a user succesfully submits a transaction (in this case, a payment), the UI SDK executes the callbacks.onSubmit function. This function, which is described in detail in the callbackssection of the Configure Solution Behavior (sdkConfiguration File) page, returns a Transaction object and a Session ID.
Transaction Object
This JSON object encapsulates all essential data related to a transaction. This data can be used for purposes like displaying order information to the user, processing payments, and storing records in your database. For a full specification with code examples, see Transaction Object.
Session ID
This field uniquely identifies the user's session.
It is crucial for all subsequent interactions with the DT One platform.
Updated 9 months ago