Actions
Onboarding Diagram » History » Revision 3
« Previous |
Revision 3/6
(diff)
| Next »
Ryan Supawarapong, 03/12/2026 04:04 AM
Onboarding Diagram¶
API Spec Template¶
@startuml Onboarding
title Onboarding
actor "customer" as c
participant "app" as a
participant "backend" as be
database "database" as db
participant "notification" as n
participant "appman" as am
participant "thaid" as th
c -> a: input mobile and email
a -> be: check existing email and mobile
be -> db: check database for existing data
alt found data
db --> be: found data
be --> a: found data
else
db --> be: not found
be --> a: not found
a -> be: confirm email & mobile
be -> db: save email & mobile info
db --> be: ok
be -> n: send email & mobile otp
be --> c: send otp to customer email & mobile
c -> a: input otp
a -> be: forward otp
be -> db: check otp
db --> be: ok
be -> a: ok
end
a --> c: redirect user to login
a -> be: check customer onboarding status
be -> db: check status
alt done
db --> be: done
be --> a: done
a --> c: done
else
a -> c: redirect to onboarding
end
c -> a: select citizenship type
c -> a: PDPA agreement
c -> a: input fullname
a -> be: send fullname
be -> db: save data
db --> be: ok
be --> a: ok
group appman
a -> be: init appman
be -> am: generate appman link
be -> db: save response
be --> a: return appman link
a -> c: redirect to appman
c -> am: do appman
am --> a: redirect back
a -> be: send id that is done
be -> am: get detail
am --> be: return detail
be -> db: save detail
db --> be: ok
be -> be: check face comparsion
be -> be: check mule?
be -> be: check freeze, hr, led, dopa, pep
be --> a: ok
end
a -> c: redirect to address page
c -> a: fill current and register address
a -> be: send data
be -> db: save data
db --> be: ok
be --> a: ok
a -> c: redirect to occupation page
c -> a: fill occupation
a -> be: send data
be -> db: save data
db --> be: ok
be --> a: ok
a -> c: redirect to workplace address page
c -> a: fill workplace address
a -> be: send data
be -> db: save data
db --> be: ok
be --> a: ok
a -> c: redirect to bank page
c -> a: fill bank
a -> be: send data
be -> db: save data
db --> be: ok
be --> a: ok
a -> c: redirect to income page
c -> a: fill source of income and country of income
a -> be: send data
be -> db: save data
db --> be: ok
be --> a: ok
a -> c: redirect to suitability test page
c -> a: fill suitability
a -> a: check if more than 30 points
alt more than 30 points
a -> c: acknowledge agreement
end
a -> be: send data
be -> db: save data
db --> be: ok
be --> a: ok
a -> c: redirect to verify identity page
c -> a: choose ndid or Thaid
group Thaid
a -> be: ask for thaid link/qr
be -> be: generate thaid link/qr
be -> db: save thaid link/qr
db --> be: ok
be --> a: return link/qr
c -> th: do thaid
th --> be: send data
be -> db: save data
db --> be: ok
end
group Ndid
c -> a: choose bank
a -> be: ask for ndid link/qr
be -> be: generate ndid link/qr
be -> db: save ndid link/qr
db --> be: ok
be --> a: return link/qr
c -> th: do thaid
th --> be: send data
be -> db: save data
db --> be: ok
end
@enduml

Updated by Ryan Supawarapong about 1 month ago · 6 revisions