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 successfully 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.


Did this page help you?