Project

General

Profile

Purpose of investment » History » Version 2

prin methirattanasophon, 02/20/2026 05:28 AM

1 1 prin methirattanasophon
# Purpose of investment
2
3
Description: User Interface to captures key compliance inputs with controlled fields. source of funds (radio options) and transaction purpose (multi-select checkbox).
4
5 2 prin methirattanasophon
Page Route: /onboarding/income
6 1 prin methirattanasophon
7 2 prin methirattanasophon
Data Source:
8
 - API: Fetch data for country_code
9
 - localStorage: member_id
10
 - https://zvn-web-storage-dev.s3.ap-southeast-1.amazonaws.com/onboarding-web/constants/damas-countries.json
11 1 prin methirattanasophon
12 2 prin methirattanasophon
Fields Requirement
13 1 prin methirattanasophon
14 2 prin methirattanasophon
|field|type|value|
15
|:--|:--|:--|
16
|sourceOfFund|radio|"Salary", "Inheritance", "Savings", "Investments", "Pension", "Business Ownership", "Real Estate Sales", "Real Estate Rental", "Allowance From Parents"|
17
|countrySourceOfIncome|disable field|country_full_name matched with country_code of user workplace|
18
|purposeOfTransaction|checkbox|"shortTerm", "longTerm", "speculation", "saving"|
19
20
21 1 prin methirattanasophon
Workflow:
22
<img style="width: 311px;" src="clipboard-202602201039-4s5kd.png"><br>
23
24
---
25 2 prin methirattanasophon
26
System Integration
27
28
1.1 Initialization
29
30
Objective: To get the latest user workplace country
31
32
API:
33
 - Method: GET
34
 - Endpoint: /pre-income
35
 - Data: Query param
36
```
37
...?id=${memberId}
38
```
39
40
1.2 Submission
41
42
Objective: To save source of funds and transaction purpose
43
44
API:
45
 - Method: POST
46
 - Endpoint: /income
47
48
Request Body:
49
50
|key|type|value|
51
|:--|:--|:--|
52
|member_id|string|member id|
53
|source_of_funds|Array[string]||
54
|country_source_of_income|string|country_code|
55
|purpose_of_investment|Array[string]||
56
|country_source_of_income_version|string|version of damas-countries|
57
|step|int|page index|