Project

General

Profile

Onboarding Foreign » History » Version 6

Ryan Supawarapong, 03/02/2026 01:44 AM

1 1 prin methirattanasophon
# Onboarding Foreign
2
3 3 prin methirattanasophon
Changes:
4
|page|details|
5
|--|--|
6
|1|remove thai title, name, lastname, laser code, id card number|
7
|1|add passport|
8
|2|new page|
9
|5|new page|
10
|6|chnage email link from thaid to success page|
11
12 1 prin methirattanasophon
Workflow Diagram
13
14 3 prin methirattanasophon
<img style="width: 291px;" src="clipboard-202602271329-bsehb.png"><br>
15 1 prin methirattanasophon
16 3 prin methirattanasophon
```
17
@startuml onboarding foreign
18 1 prin methirattanasophon
19
start
20
:fullname;
21
note right: page 1
22
:appman;
23
note right: acecoin
24
:eligibleCheck;
25
note right: page 2 new
26
:crsQuestion;
27
note right: page 2 new
28
:currentAddress;
29
note right: page 3 Basic info
30
:occupation;
31
note right: page 3 Basic info
32
:sourceOfIncome;
33
note right: page 3 Basic info
34
:workAddress;
35
note right: page 3 Basic info
36
:bank;
37
note right: page 3 Basic info
38
:suitabilityTest;
39
note right: page 4
40
:selectDocument;
41 3 prin methirattanasophon
note right: page 5 new
42 1 prin methirattanasophon
:uploadDocument; 
43 3 prin methirattanasophon
note right: page 5 new
44
:email mobile verify;
45
note right: page 6
46 1 prin methirattanasophon
end 
47
@enduml
48
49 2 prin methirattanasophon
```
50 4 Ryan Supawarapong
51 1 prin methirattanasophon
## Sequence Diagram
52 6 Ryan Supawarapong
<img style="width: 797px;" src="clipboard-202603020844-povww.png"><br>
53 4 Ryan Supawarapong
54
```
55
@startuml
56
57
title Onboarding Foreigner
58
59
actor "customer" as c
60
participant "frontend" as fe
61
participant "backend" as be
62
database "database" as db
63
participant "notification" as n
64
participant "appman" as ap
65
66
67
c -> fe: choose Foreign Investor
68
fe --> c: ok
69
70
group Fullname Page
71
72
c -> fe: fill fullname, email, mobile and passport detail
73
fe -> be: send fullname, email, mobile and passport detail
74
75
be -> db: check for existing email, mobile and passport
76
db --> be: not found
77
be -> db: create user entry in information
78
db --> be: ok
79
be --> fe: ok & redirect to appman page (init by BE)
80
fe --> c: show next page (Appman)
81
82
  group Back to Register
83
    db --> be: found
84
    be --> fe: found existing user
85
    fe --> c: this account already exist. "Enter passport no"
86
    c -> fe: enter passport no
87
    fe --> be: check passport no for existing user
88
  end
89
90
end
91
92
group Appman Page
93
  c -> ap: do passport
94
  ap --> fe: redirect to next page(CRS)
95
end
96
97
group CRS page
98
  fe -> be: send appman state code
99
  be -> ap: request customer data
100
  ap --> be: send customer data
101
  be --> fe: ok
102
  
103
  c -> fe: do eligibility
104
  fe --> c: ok
105
  c -> fe: TIN detail for CRS
106
  fe -> be: send Tin detail
107
  be -> db: save TIN
108
  db --> be: ok
109
  be --> fe: ok
110
  fe --> c: redirect to next page(basic info)
111
end
112
113
group Basic Info page
114
115
  c -> fe: input data
116 1 prin methirattanasophon
  fe -> be: same info (Same as regular onboarding)
117 6 Ryan Supawarapong
  be -> db: save info
118
  db --> be: ok
119 4 Ryan Supawarapong
  be --> fe: ok
120
  fe --> c: redirect to next page(Suite test)
121
end
122
123
group Suite test
124
  c -> fe: do suite test
125
  fe -> be: send suite test result
126 1 prin methirattanasophon
  be -> db: save suite test result
127 4 Ryan Supawarapong
  db --> be: ok
128 1 prin methirattanasophon
  db --> fe: ok
129 5 Ryan Supawarapong
  fe --> c: redirect to next page(verification document)
130 4 Ryan Supawarapong
end
131
132 5 Ryan Supawarapong
group Verification Document
133 4 Ryan Supawarapong
134
  c -> fe: choose type & upload document
135
  fe -> be: document & document type
136
  be -> db: save document & document type
137
  db --> be: ok
138
  be --> fe: ok
139
  fe --> c: redirect to next page(verify email and mobile)
140
141
end
142
143
group Veirfy Email and Mobile
144
145
  c -> fe: verify mobile
146
  fe -> be: request sms otp
147
  be -> n: send sms otp
148
  n --> be: ok
149
  be --> fe: ok
150
  n -> c: sms otp
151
  c -> fe: input otp
152
  fe -> be: otp code
153
  be -> db: check otp code
154
  db --> be: ok
155
  be --> fe: ok
156
  fe --> c: ok
157
158
  c -> fe: verify email
159
  fe -> be: request verification link
160
  be -> n: send email with link
161
  n --> be: ok
162
  be --> fe: ok
163
  n -> c: email with link
164
165
  c -> fe: click link
166
  fe -> be: jwt token
167
  be -> be: check jwt token
168
  be -> db: update status
169
  db --> be: ok
170
  be --> fe: ok
171
  fe --> c: ok
172
173
end
174
175
@enduml
176
```