Project

General

Profile

Suitabiliaty Test » History » Version 1

prin methirattanasophon, 02/19/2026 06:01 AM

1 1 prin methirattanasophon
# Suitabiliaty Test
2
3
Description: To assess an investor's risk profile by analyzing their financial status, knowledge, experience, and feelings when experiencing losses. This helps investors understand themselves better and choose appropriate investment products, protecting them from excessive investment risks.
4
5
Page Route: /onboarding/suite-test
6
Data Source:
7
 - localStorage: member_id, age
8
 - API: suitability question
9
10
UI:
11
|Section|description|value|
12
|:--|:--|:--|
13
|Questions and Answer|display question with choices. combination for single selection choices or multiple selection choices base on question type||
14
|Result Table|calculate score and display risk level|low, medium low, medium high, high, very high|
15
|Risk Agreement|only for low, medium low, medium high level need to check accept risk|bool|
16
17
---
18
19
System Integration
20
21
1. Get Suitability Question
22
23
API:
24
 - Endpoint: /customer/suitability
25
 - Method: GET
26
 - Data: Query params
27
```
28
...?id={member_id}
29
```
30
31
Response Parameters:
32
33
|Parameter|Type|Description|
34
|:--|:--|:--|
35
|user_age|Int|User age|
36
|version|String|Version (Timestamp)|
37
|en|Array[Object]|Question and Choices (English)|
38
|th|Array[Object]|Question and Choices (Thai)|
39
40
Question Structure (Object in en/th)
41
42
|Field|Type|Description|
43
|:--|:--|:--|
44
|{id}|String|"Key question index (eg. ""1"", ""2"") question"
45
|type|Int|"1 = Single Choice, 2 = Multiple Choice"|
46
|answer|Array[Object]|Choices seperate by Choice ID|
47
48
---
49
50
2. Submission
51
52
API:
53
 - Endpoint: /customer/suitability
54
 - Method: POST
55
56
Request Body:
57
58
|key|type|description|
59
|:--|:--|:--|
60
|question|string|number of question|
61
|answer|Array[string]|["q\|a",...]|
62
|total|Int|score|
63
|acknowledge|bool||
64
|suitability_test_score_code|string||
65
|result_version|string|result version|
66
|suite_test_version|string|question version|
67
|step|Int|page index|