Skip to content

Commit 2ed78fb

Browse files
author
Github Workflow
committed
JSON Schema Update
1 parent ba538e3 commit 2ed78fb

File tree

4 files changed

+326
-0
lines changed

4 files changed

+326
-0
lines changed
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"new_account_wallet": 1,
3+
"account_type": "doughflow",
4+
"address_city": "Melbourne",
5+
"address_line_1": "20 Broadway Av",
6+
"address_line_2": "East Melbourne VIC",
7+
"address_postcode": "3002",
8+
"address_state": "Victoria",
9+
"calling_country_code": "61",
10+
"currency": "USD",
11+
"date_of_birth": "1980-01-31",
12+
"fatca_declaration": 1,
13+
"first_name": "Peter",
14+
"last_name": "Pan",
15+
"non_pep_declaration": 1,
16+
"phone": "23456789"
17+
}
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
{
2+
"$schema": "http://json-schema.org/draft-04/schema#",
3+
"title": "New Real-Money Wallet Account (response)",
4+
"description": "Create a new account real-money wallet account.",
5+
"type": "object",
6+
"required": [
7+
"echo_req",
8+
"msg_type"
9+
],
10+
"properties": {
11+
"new_account_wallet": {
12+
"title": "new_account_wallet",
13+
"description": "New wallet account details",
14+
"type": "object",
15+
"additionalProperties": false,
16+
"required": [
17+
"client_id",
18+
"landing_company",
19+
"oauth_token"
20+
],
21+
"properties": {
22+
"client_id": {
23+
"description": "Client ID of new real money account",
24+
"type": "string"
25+
},
26+
"currency": {
27+
"description": "Currency of an account",
28+
"type": "string"
29+
},
30+
"currency_type": {
31+
"description": "Currency type against the currency",
32+
"type": "string"
33+
},
34+
"landing_company": {
35+
"description": "Landing company full name",
36+
"type": "string"
37+
},
38+
"landing_company_short": {
39+
"description": "Landing company shortcode",
40+
"type": "string"
41+
},
42+
"landing_company_shortcode": {
43+
"description": "Landing company shortcode",
44+
"type": "string"
45+
},
46+
"oauth_token": {
47+
"description": "OAuth token for client's login session",
48+
"type": "string"
49+
}
50+
}
51+
},
52+
"echo_req": {
53+
"description": "Echo of the request made.",
54+
"type": "object"
55+
},
56+
"msg_type": {
57+
"description": "Action name of the request made.",
58+
"type": "string",
59+
"enum": [
60+
"new_account_wallet"
61+
]
62+
},
63+
"req_id": {
64+
"description": "Optional field sent in request to map to response, present only when request contains `req_id`.",
65+
"type": "integer"
66+
}
67+
}
68+
}
Lines changed: 239 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,239 @@
1+
{
2+
"$schema": "http://json-schema.org/draft-04/schema#",
3+
"title": "New Real-Money Wallet Account (request)",
4+
"description": "Create a new account real-money wallet account.",
5+
"type": "object",
6+
"auth_required": 1,
7+
"auth_scopes": [
8+
"admin"
9+
],
10+
"additionalProperties": false,
11+
"required": [
12+
"new_account_wallet",
13+
"account_type",
14+
"currency"
15+
],
16+
"properties": {
17+
"new_account_wallet": {
18+
"description": "Must be `1`",
19+
"type": "integer",
20+
"enum": [
21+
1
22+
]
23+
},
24+
"accept_risk": {
25+
"description": "Show whether client has accepted risk disclaimer.",
26+
"type": "integer",
27+
"enum": [
28+
0,
29+
1
30+
]
31+
},
32+
"account_opening_reason": {
33+
"description": "[Optional] Purpose and reason for requesting the account opening.",
34+
"type": "string",
35+
"enum": [
36+
"Speculative",
37+
"Income Earning",
38+
"Hedging",
39+
"Peer-to-peer exchange",
40+
"Additional revenue",
41+
"Savings"
42+
]
43+
},
44+
"account_type": {
45+
"description": "To set the wallets type - only doughflow and crptyo wallets are allowed for initial phase, other types will be added later",
46+
"type": "string",
47+
"enum": [
48+
"doughflow",
49+
"crypto"
50+
]
51+
},
52+
"address_city": {
53+
"description": "[Optional] Within 35 characters.",
54+
"type": "string",
55+
"pattern": "^[\\p{L}\\s'.-]{1,35}$"
56+
},
57+
"address_line_1": {
58+
"description": "[Optional] Mailing address.",
59+
"type": "string",
60+
"pattern": "^[\\p{L}\\p{Nd}\\s'’.,:;()@#/-]{1,70}$"
61+
},
62+
"address_line_2": {
63+
"description": "[Optional] Within 70 characters.",
64+
"type": "string",
65+
"pattern": "^[\\p{L}\\p{Nd}\\s'’.,:;()@#/-]{0,70}$"
66+
},
67+
"address_postcode": {
68+
"description": "[Optional] Within 20 characters and may not contain '+'.",
69+
"type": "string",
70+
"pattern": "^([A-Za-z0-9][A-Za-z0-9\\s-]{0,20})?$"
71+
},
72+
"address_state": {
73+
"description": "[Optional] Possible value receive from `states_list` call.",
74+
"type": "string",
75+
"pattern": "^[\\p{L}\\p{Nd}\\s'.,-]{0,100}$"
76+
},
77+
"affiliate_token": {
78+
"description": "[Optional] Affiliate token, within 32 characters.",
79+
"type": "string",
80+
"pattern": "^[\\w-]{0,32}$"
81+
},
82+
"calling_country_code": {
83+
"description": "[Optional] The phone's calling country code. Don't include the `+` sign. Up to 4 digits.",
84+
"type": [
85+
"null",
86+
"string"
87+
],
88+
"pattern": "^\\d{1,4}$",
89+
"sensitive": 1
90+
},
91+
"citizen": {
92+
"description": "[Optional] Country of legal citizenship, 2-letter country code. Possible value receive from `residence_list` call.",
93+
"type": "string",
94+
"pattern": "^[a-z]{2}$"
95+
},
96+
"client_type": {
97+
"description": "[Optional] Indicates whether this is for a client requesting an account with professional status.",
98+
"type": "string",
99+
"default": "retail",
100+
"enum": [
101+
"professional",
102+
"retail"
103+
]
104+
},
105+
"currency": {
106+
"description": "To set currency of the account. List of supported currencies can be acquired with `payout_currencies` call.",
107+
"type": "string",
108+
"pattern": "^[a-zA-Z0-9]{2,20}$"
109+
},
110+
"date_of_birth": {
111+
"description": "[Optional] Date of birth format: `yyyy-mm-dd`.",
112+
"type": "string",
113+
"pattern": "^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$"
114+
},
115+
"employment_status": {
116+
"description": "Employment Status.",
117+
"type": "string"
118+
},
119+
"fatca_declaration": {
120+
"description": "[Optional] Indicates client's self-declaration of FATCA.",
121+
"type": "integer",
122+
"enum": [
123+
0,
124+
1
125+
]
126+
},
127+
"financial_assessment": {
128+
"description": "Required for maltainvest",
129+
"type": "object",
130+
"additionalProperties": false,
131+
"patternProperties": {
132+
".*": {
133+
"description": "Any property with a non-empty string value",
134+
"type": "string"
135+
}
136+
}
137+
},
138+
"first_name": {
139+
"description": "[Optional] Within 1-50 characters, use only letters, spaces, hyphens, full-stops or apostrophes.",
140+
"type": "string",
141+
"pattern": "^(?!.*\\s{2,})[\\p{L}\\s'.-]{1,50}$",
142+
"sensitive": 1
143+
},
144+
"landing_company_short": {
145+
"description": "[Optional] Set the landing company of the wallet. Default value is 'svg' if company not provided",
146+
"type": "string",
147+
"enum": [
148+
"maltainvest",
149+
"svg"
150+
]
151+
},
152+
"last_name": {
153+
"description": "[Optional] Within 1-50 characters, use only letters, spaces, hyphens, full-stops or apostrophes.",
154+
"type": "string",
155+
"pattern": "^(?!.*\\s{2,})[\\p{L}\\s'.-]{1,50}$",
156+
"sensitive": 1
157+
},
158+
"non_pep_declaration": {
159+
"description": "[Optional] Indicates client's self-declaration of not being a PEP/RCA (Politically Exposed Person/Relatives and Close Associates).",
160+
"type": "integer",
161+
"maximum": 1,
162+
"minimum": 0
163+
},
164+
"phone": {
165+
"description": "[Optional] The phone's national format, don't include the `+` sign nor the calling country code. Up to 15 digits are allowed.",
166+
"type": [
167+
"null",
168+
"string"
169+
],
170+
"sensitive": 1
171+
},
172+
"place_of_birth": {
173+
"description": "[Optional] Place of birth, 2-letter country code.",
174+
"type": "string",
175+
"pattern": "^[a-z]{2}$"
176+
},
177+
"residence": {
178+
"description": "2-letter country code, possible value receive from `residence_list` call.",
179+
"type": "string",
180+
"pattern": "^[a-z]{2}$"
181+
},
182+
"resident_self_declaration": {
183+
"description": "[Optional] Indicates client's self declaration for opening account under own initiative, must be 1",
184+
"type": "integer",
185+
"enum": [
186+
1
187+
]
188+
},
189+
"salutation": {
190+
"description": "Accept any value in enum list.",
191+
"type": "string",
192+
"enum": [
193+
"Mr",
194+
"Ms",
195+
"Miss",
196+
"Mrs"
197+
]
198+
},
199+
"tax_identification_number": {
200+
"description": "Tax identification number. Only applicable for real money account. Required for `maltainvest` landing company.",
201+
"type": "string",
202+
"pattern": "^(?!^$|\\s+)[A-Za-z0-9.\\/\\s-]{0,25}$"
203+
},
204+
"tax_residence": {
205+
"description": "Residence for tax purpose. Comma separated iso country code if multiple jurisdictions. Only applicable for real money account. Required for `maltainvest` landing company.",
206+
"type": "string",
207+
"pattern": "^[a-z]{0,2}(?:,[a-z]{2})*$"
208+
},
209+
"tin_skipped": {
210+
"description": "[Optional] Whether the client has skipped the TIN form. Only applicable for real money account.",
211+
"type": "integer",
212+
"enum": [
213+
0,
214+
1
215+
]
216+
},
217+
"tnc_acceptance": {
218+
"description": "The tnc acceptance status of the user.",
219+
"type": "integer",
220+
"enum": [
221+
0,
222+
1
223+
]
224+
},
225+
"loginid": {
226+
"description": "[Optional] The login id of the user. Mandatory when multiple tokens were provided during authorize.",
227+
"type": "string",
228+
"pattern": "^[A-Za-z]+[0-9]+$"
229+
},
230+
"passthrough": {
231+
"description": "[Optional] Used to pass data through the websocket, which may be retrieved via the `echo_req` output field.",
232+
"type": "object"
233+
},
234+
"req_id": {
235+
"description": "[Optional] Used to map request to response.",
236+
"type": "integer"
237+
}
238+
}
239+
}

static/data/v3.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,8 @@ groups:
119119
title: 'New Real-Money Account: Default Landing Company'
120120
- name: new_account_virtual
121121
title: New Virtual-Money Account
122+
- name: new_account_wallet
123+
title: New Real-Money Wallet Account
122124
- name: new_partner_account
123125
title: 'New Real-Partner Account: Default Landing Company'
124126
- name: oauth_apps

0 commit comments

Comments
 (0)