squarefi-bff-api-module 1.36.36 → 1.36.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -7347,6 +7347,28 @@ export interface components {
|
|
|
7347
7347
|
type?: string;
|
|
7348
7348
|
/** @description Whether cards can be tokenized */
|
|
7349
7349
|
tokenizable?: boolean;
|
|
7350
|
+
/** @description What a cardholder on this program must carry. Set per program in the vendor config, so it can change without a release — read it instead of hardcoding the form. */
|
|
7351
|
+
cardholder_requirements?: {
|
|
7352
|
+
/**
|
|
7353
|
+
* @description Cumulative KYC level; each level includes the previous one
|
|
7354
|
+
* @enum {string}
|
|
7355
|
+
*/
|
|
7356
|
+
level?: "minimal" | "basic" | "full";
|
|
7357
|
+
/**
|
|
7358
|
+
* @description Required field names; address fields are dotted (address.line1)
|
|
7359
|
+
* @example [
|
|
7360
|
+
* "first_name",
|
|
7361
|
+
* "last_name",
|
|
7362
|
+
* "email",
|
|
7363
|
+
* "phone",
|
|
7364
|
+
* "birth_date",
|
|
7365
|
+
* "nationality"
|
|
7366
|
+
* ]
|
|
7367
|
+
*/
|
|
7368
|
+
required?: string[];
|
|
7369
|
+
/** @description Documents that must be attached; empty below the full level */
|
|
7370
|
+
required_documents?: ("gov_id_front" | "gov_id_back" | "selfie")[];
|
|
7371
|
+
};
|
|
7350
7372
|
/** @description Available order types */
|
|
7351
7373
|
order_types?: Record<string, never>[];
|
|
7352
7374
|
/** @description KYC requirements */
|
|
@@ -7902,10 +7924,15 @@ export interface components {
|
|
|
7902
7924
|
};
|
|
7903
7925
|
ApiCryptoTransferRequest: {
|
|
7904
7926
|
/**
|
|
7905
|
-
* @description Amount to send, in `from_currency_id` units.
|
|
7927
|
+
* @description Amount to send, in `from_currency_id` units. With `is_reverse: true` — the amount the recipient must receive, in destination-currency units.
|
|
7906
7928
|
* @example 100
|
|
7907
7929
|
*/
|
|
7908
7930
|
amount: number;
|
|
7931
|
+
/**
|
|
7932
|
+
* @description Optional. When true, `amount` is the receive-amount and the debited amount is grossed up with fees.
|
|
7933
|
+
* @default false
|
|
7934
|
+
*/
|
|
7935
|
+
is_reverse: boolean;
|
|
7909
7936
|
/**
|
|
7910
7937
|
* Format: uuid
|
|
7911
7938
|
* @description UUID of the source currency to debit from the wallet's omnibus balance. Get the list from `GET /api/reference/currencies`.
|
|
@@ -7948,10 +7975,15 @@ export interface components {
|
|
|
7948
7975
|
};
|
|
7949
7976
|
ApiOfframpOrderRequest: {
|
|
7950
7977
|
/**
|
|
7951
|
-
* @description Amount to send, in `from_currency_id` units.
|
|
7978
|
+
* @description Amount to send, in `from_currency_id` units. With `is_reverse: true` — the amount the recipient must receive, in destination-currency units.
|
|
7952
7979
|
* @example 1000
|
|
7953
7980
|
*/
|
|
7954
7981
|
amount: number;
|
|
7982
|
+
/**
|
|
7983
|
+
* @description Optional. When true, `amount` is the receive-amount and the debited amount is grossed up with fees.
|
|
7984
|
+
* @default false
|
|
7985
|
+
*/
|
|
7986
|
+
is_reverse: boolean;
|
|
7955
7987
|
/**
|
|
7956
7988
|
* Format: uuid
|
|
7957
7989
|
* @description Source currency UUID. Get from `GET /api/reference/currencies`.
|
|
@@ -7995,10 +8027,15 @@ export interface components {
|
|
|
7995
8027
|
};
|
|
7996
8028
|
ApiExchangeOrderRequest: {
|
|
7997
8029
|
/**
|
|
7998
|
-
* @description Amount to exchange, in `from_currency_id` units.
|
|
8030
|
+
* @description Amount to exchange, in `from_currency_id` units. With `is_reverse: true` — the amount to receive, in `to_currency_id` units.
|
|
7999
8031
|
* @example 100
|
|
8000
8032
|
*/
|
|
8001
8033
|
amount: number;
|
|
8034
|
+
/**
|
|
8035
|
+
* @description Optional. When true, `amount` is the receive-amount and the debited amount is grossed up with fees.
|
|
8036
|
+
* @default false
|
|
8037
|
+
*/
|
|
8038
|
+
is_reverse: boolean;
|
|
8002
8039
|
/**
|
|
8003
8040
|
* Format: uuid
|
|
8004
8041
|
* @description Source currency UUID. Get from `GET /api/reference/currencies`.
|
|
@@ -6022,6 +6022,360 @@ export interface paths {
|
|
|
6022
6022
|
patch?: never;
|
|
6023
6023
|
trace?: never;
|
|
6024
6024
|
};
|
|
6025
|
+
"/frontend/notification-preferences": {
|
|
6026
|
+
parameters: {
|
|
6027
|
+
query?: never;
|
|
6028
|
+
header?: never;
|
|
6029
|
+
path?: never;
|
|
6030
|
+
cookie?: never;
|
|
6031
|
+
};
|
|
6032
|
+
/**
|
|
6033
|
+
* Effective delivery-channel preferences
|
|
6034
|
+
* @description Full channel list with defaults applied. `IN_APP` is always enabled (cannot be disabled).
|
|
6035
|
+
*/
|
|
6036
|
+
get: {
|
|
6037
|
+
parameters: {
|
|
6038
|
+
query?: never;
|
|
6039
|
+
header?: never;
|
|
6040
|
+
path?: never;
|
|
6041
|
+
cookie?: never;
|
|
6042
|
+
};
|
|
6043
|
+
requestBody?: never;
|
|
6044
|
+
responses: {
|
|
6045
|
+
/** @description Effective preference per channel. */
|
|
6046
|
+
200: {
|
|
6047
|
+
headers: {
|
|
6048
|
+
[name: string]: unknown;
|
|
6049
|
+
};
|
|
6050
|
+
content: {
|
|
6051
|
+
"application/json": {
|
|
6052
|
+
/** @example true */
|
|
6053
|
+
success?: boolean;
|
|
6054
|
+
data?: {
|
|
6055
|
+
preferences?: components["schemas"]["NotificationPreference"][];
|
|
6056
|
+
};
|
|
6057
|
+
};
|
|
6058
|
+
};
|
|
6059
|
+
};
|
|
6060
|
+
401: components["responses"]["UnauthorizedError"];
|
|
6061
|
+
};
|
|
6062
|
+
};
|
|
6063
|
+
/**
|
|
6064
|
+
* Update delivery-channel preferences
|
|
6065
|
+
* @description Bulk upsert. Disabling `IN_APP` is rejected with 400 (`INBOX_CHANNEL_LOCKED`). Changes apply from the next delivery.
|
|
6066
|
+
*/
|
|
6067
|
+
put: {
|
|
6068
|
+
parameters: {
|
|
6069
|
+
query?: never;
|
|
6070
|
+
header?: never;
|
|
6071
|
+
path?: never;
|
|
6072
|
+
cookie?: never;
|
|
6073
|
+
};
|
|
6074
|
+
requestBody: {
|
|
6075
|
+
content: {
|
|
6076
|
+
"application/json": {
|
|
6077
|
+
preferences: components["schemas"]["NotificationPreference"][];
|
|
6078
|
+
};
|
|
6079
|
+
};
|
|
6080
|
+
};
|
|
6081
|
+
responses: {
|
|
6082
|
+
/** @description Effective preference list after the update. */
|
|
6083
|
+
200: {
|
|
6084
|
+
headers: {
|
|
6085
|
+
[name: string]: unknown;
|
|
6086
|
+
};
|
|
6087
|
+
content: {
|
|
6088
|
+
"application/json": {
|
|
6089
|
+
/** @example true */
|
|
6090
|
+
success?: boolean;
|
|
6091
|
+
data?: {
|
|
6092
|
+
preferences?: components["schemas"]["NotificationPreference"][];
|
|
6093
|
+
};
|
|
6094
|
+
};
|
|
6095
|
+
};
|
|
6096
|
+
};
|
|
6097
|
+
/** @description Invalid body (`VALIDATION_ERROR`) or an attempt to disable `IN_APP` (`INBOX_CHANNEL_LOCKED`). */
|
|
6098
|
+
400: {
|
|
6099
|
+
headers: {
|
|
6100
|
+
[name: string]: unknown;
|
|
6101
|
+
};
|
|
6102
|
+
content?: never;
|
|
6103
|
+
};
|
|
6104
|
+
401: components["responses"]["UnauthorizedError"];
|
|
6105
|
+
};
|
|
6106
|
+
};
|
|
6107
|
+
post?: never;
|
|
6108
|
+
delete?: never;
|
|
6109
|
+
options?: never;
|
|
6110
|
+
head?: never;
|
|
6111
|
+
patch?: never;
|
|
6112
|
+
trace?: never;
|
|
6113
|
+
};
|
|
6114
|
+
"/frontend/notifications": {
|
|
6115
|
+
parameters: {
|
|
6116
|
+
query?: never;
|
|
6117
|
+
header?: never;
|
|
6118
|
+
path?: never;
|
|
6119
|
+
cookie?: never;
|
|
6120
|
+
};
|
|
6121
|
+
/** List the notification inbox (newest first, cursor pagination) */
|
|
6122
|
+
get: {
|
|
6123
|
+
parameters: {
|
|
6124
|
+
query?: {
|
|
6125
|
+
/** @description Opaque cursor from a previous page (`next_cursor`). Omit for the first page. */
|
|
6126
|
+
cursor?: string;
|
|
6127
|
+
limit?: number;
|
|
6128
|
+
unread_only?: "true" | "false";
|
|
6129
|
+
wallet_id?: string;
|
|
6130
|
+
};
|
|
6131
|
+
header?: never;
|
|
6132
|
+
path?: never;
|
|
6133
|
+
cookie?: never;
|
|
6134
|
+
};
|
|
6135
|
+
requestBody?: never;
|
|
6136
|
+
responses: {
|
|
6137
|
+
/** @description Page of notifications; `next_cursor` is null on the final page. */
|
|
6138
|
+
200: {
|
|
6139
|
+
headers: {
|
|
6140
|
+
[name: string]: unknown;
|
|
6141
|
+
};
|
|
6142
|
+
content: {
|
|
6143
|
+
"application/json": {
|
|
6144
|
+
/** @example true */
|
|
6145
|
+
success?: boolean;
|
|
6146
|
+
data?: {
|
|
6147
|
+
items?: components["schemas"]["NotificationView"][];
|
|
6148
|
+
next_cursor?: string | null;
|
|
6149
|
+
};
|
|
6150
|
+
};
|
|
6151
|
+
};
|
|
6152
|
+
};
|
|
6153
|
+
/** @description Invalid query (`VALIDATION_ERROR`) or a broken cursor (`NOTIFICATION_CURSOR_INVALID`). */
|
|
6154
|
+
400: {
|
|
6155
|
+
headers: {
|
|
6156
|
+
[name: string]: unknown;
|
|
6157
|
+
};
|
|
6158
|
+
content?: never;
|
|
6159
|
+
};
|
|
6160
|
+
401: components["responses"]["UnauthorizedError"];
|
|
6161
|
+
};
|
|
6162
|
+
};
|
|
6163
|
+
put?: never;
|
|
6164
|
+
post?: never;
|
|
6165
|
+
delete?: never;
|
|
6166
|
+
options?: never;
|
|
6167
|
+
head?: never;
|
|
6168
|
+
patch?: never;
|
|
6169
|
+
trace?: never;
|
|
6170
|
+
};
|
|
6171
|
+
"/frontend/notifications/unread-count": {
|
|
6172
|
+
parameters: {
|
|
6173
|
+
query?: never;
|
|
6174
|
+
header?: never;
|
|
6175
|
+
path?: never;
|
|
6176
|
+
cookie?: never;
|
|
6177
|
+
};
|
|
6178
|
+
/** Unread notifications count (badge) */
|
|
6179
|
+
get: {
|
|
6180
|
+
parameters: {
|
|
6181
|
+
query?: never;
|
|
6182
|
+
header?: never;
|
|
6183
|
+
path?: never;
|
|
6184
|
+
cookie?: never;
|
|
6185
|
+
};
|
|
6186
|
+
requestBody?: never;
|
|
6187
|
+
responses: {
|
|
6188
|
+
/** @description Current unread count. */
|
|
6189
|
+
200: {
|
|
6190
|
+
headers: {
|
|
6191
|
+
[name: string]: unknown;
|
|
6192
|
+
};
|
|
6193
|
+
content: {
|
|
6194
|
+
"application/json": {
|
|
6195
|
+
/** @example true */
|
|
6196
|
+
success?: boolean;
|
|
6197
|
+
data?: {
|
|
6198
|
+
/** @example 3 */
|
|
6199
|
+
count?: number;
|
|
6200
|
+
};
|
|
6201
|
+
};
|
|
6202
|
+
};
|
|
6203
|
+
};
|
|
6204
|
+
401: components["responses"]["UnauthorizedError"];
|
|
6205
|
+
};
|
|
6206
|
+
};
|
|
6207
|
+
put?: never;
|
|
6208
|
+
post?: never;
|
|
6209
|
+
delete?: never;
|
|
6210
|
+
options?: never;
|
|
6211
|
+
head?: never;
|
|
6212
|
+
patch?: never;
|
|
6213
|
+
trace?: never;
|
|
6214
|
+
};
|
|
6215
|
+
"/frontend/notifications/mark-read": {
|
|
6216
|
+
parameters: {
|
|
6217
|
+
query?: never;
|
|
6218
|
+
header?: never;
|
|
6219
|
+
path?: never;
|
|
6220
|
+
cookie?: never;
|
|
6221
|
+
};
|
|
6222
|
+
get?: never;
|
|
6223
|
+
put?: never;
|
|
6224
|
+
/**
|
|
6225
|
+
* Mark specific notifications as read
|
|
6226
|
+
* @description Idempotent — already-read ids are not counted. Other tabs/devices sync via the realtime `notifications.read` event.
|
|
6227
|
+
*/
|
|
6228
|
+
post: {
|
|
6229
|
+
parameters: {
|
|
6230
|
+
query?: never;
|
|
6231
|
+
header?: never;
|
|
6232
|
+
path?: never;
|
|
6233
|
+
cookie?: never;
|
|
6234
|
+
};
|
|
6235
|
+
requestBody: {
|
|
6236
|
+
content: {
|
|
6237
|
+
"application/json": {
|
|
6238
|
+
notification_ids: string[];
|
|
6239
|
+
};
|
|
6240
|
+
};
|
|
6241
|
+
};
|
|
6242
|
+
responses: {
|
|
6243
|
+
/** @description Number of notifications actually transitioned to read. */
|
|
6244
|
+
200: {
|
|
6245
|
+
headers: {
|
|
6246
|
+
[name: string]: unknown;
|
|
6247
|
+
};
|
|
6248
|
+
content: {
|
|
6249
|
+
"application/json": {
|
|
6250
|
+
/** @example true */
|
|
6251
|
+
success?: boolean;
|
|
6252
|
+
data?: {
|
|
6253
|
+
/** @example 2 */
|
|
6254
|
+
updated?: number;
|
|
6255
|
+
};
|
|
6256
|
+
};
|
|
6257
|
+
};
|
|
6258
|
+
};
|
|
6259
|
+
/** @description Invalid body (`VALIDATION_ERROR`). */
|
|
6260
|
+
400: {
|
|
6261
|
+
headers: {
|
|
6262
|
+
[name: string]: unknown;
|
|
6263
|
+
};
|
|
6264
|
+
content?: never;
|
|
6265
|
+
};
|
|
6266
|
+
401: components["responses"]["UnauthorizedError"];
|
|
6267
|
+
};
|
|
6268
|
+
};
|
|
6269
|
+
delete?: never;
|
|
6270
|
+
options?: never;
|
|
6271
|
+
head?: never;
|
|
6272
|
+
patch?: never;
|
|
6273
|
+
trace?: never;
|
|
6274
|
+
};
|
|
6275
|
+
"/frontend/notifications/mark-all-read": {
|
|
6276
|
+
parameters: {
|
|
6277
|
+
query?: never;
|
|
6278
|
+
header?: never;
|
|
6279
|
+
path?: never;
|
|
6280
|
+
cookie?: never;
|
|
6281
|
+
};
|
|
6282
|
+
get?: never;
|
|
6283
|
+
put?: never;
|
|
6284
|
+
/** Mark every unread notification as read */
|
|
6285
|
+
post: {
|
|
6286
|
+
parameters: {
|
|
6287
|
+
query?: never;
|
|
6288
|
+
header?: never;
|
|
6289
|
+
path?: never;
|
|
6290
|
+
cookie?: never;
|
|
6291
|
+
};
|
|
6292
|
+
requestBody?: never;
|
|
6293
|
+
responses: {
|
|
6294
|
+
/** @description Number of notifications actually transitioned to read. */
|
|
6295
|
+
200: {
|
|
6296
|
+
headers: {
|
|
6297
|
+
[name: string]: unknown;
|
|
6298
|
+
};
|
|
6299
|
+
content: {
|
|
6300
|
+
"application/json": {
|
|
6301
|
+
/** @example true */
|
|
6302
|
+
success?: boolean;
|
|
6303
|
+
data?: {
|
|
6304
|
+
/** @example 5 */
|
|
6305
|
+
updated?: number;
|
|
6306
|
+
};
|
|
6307
|
+
};
|
|
6308
|
+
};
|
|
6309
|
+
};
|
|
6310
|
+
401: components["responses"]["UnauthorizedError"];
|
|
6311
|
+
};
|
|
6312
|
+
};
|
|
6313
|
+
delete?: never;
|
|
6314
|
+
options?: never;
|
|
6315
|
+
head?: never;
|
|
6316
|
+
patch?: never;
|
|
6317
|
+
trace?: never;
|
|
6318
|
+
};
|
|
6319
|
+
"/frontend/notifications/realtime-token": {
|
|
6320
|
+
parameters: {
|
|
6321
|
+
query?: never;
|
|
6322
|
+
header?: never;
|
|
6323
|
+
path?: never;
|
|
6324
|
+
cookie?: never;
|
|
6325
|
+
};
|
|
6326
|
+
get?: never;
|
|
6327
|
+
put?: never;
|
|
6328
|
+
/**
|
|
6329
|
+
* Issue a realtime subscription token
|
|
6330
|
+
* @description Subscribe-only token for the realtime SDK (`authCallback`). `channels`
|
|
6331
|
+
* lists the exact channel names the token grants — the personal channel
|
|
6332
|
+
* plus one per accessible wallet. Tokens expire after ~1 hour; the SDK
|
|
6333
|
+
* re-requests through the same endpoint.
|
|
6334
|
+
*
|
|
6335
|
+
*/
|
|
6336
|
+
post: {
|
|
6337
|
+
parameters: {
|
|
6338
|
+
query?: never;
|
|
6339
|
+
header?: never;
|
|
6340
|
+
path?: never;
|
|
6341
|
+
cookie?: never;
|
|
6342
|
+
};
|
|
6343
|
+
requestBody?: never;
|
|
6344
|
+
responses: {
|
|
6345
|
+
/** @description Token, expiry and the granted channel names. */
|
|
6346
|
+
200: {
|
|
6347
|
+
headers: {
|
|
6348
|
+
[name: string]: unknown;
|
|
6349
|
+
};
|
|
6350
|
+
content: {
|
|
6351
|
+
"application/json": {
|
|
6352
|
+
/** @example true */
|
|
6353
|
+
success?: boolean;
|
|
6354
|
+
data?: {
|
|
6355
|
+
token?: string;
|
|
6356
|
+
/** Format: date-time */
|
|
6357
|
+
expires_at?: string;
|
|
6358
|
+
channels?: string[];
|
|
6359
|
+
};
|
|
6360
|
+
};
|
|
6361
|
+
};
|
|
6362
|
+
};
|
|
6363
|
+
401: components["responses"]["UnauthorizedError"];
|
|
6364
|
+
/** @description Realtime delivery is disabled for this deployment (`REALTIME_DISABLED`). */
|
|
6365
|
+
503: {
|
|
6366
|
+
headers: {
|
|
6367
|
+
[name: string]: unknown;
|
|
6368
|
+
};
|
|
6369
|
+
content?: never;
|
|
6370
|
+
};
|
|
6371
|
+
};
|
|
6372
|
+
};
|
|
6373
|
+
delete?: never;
|
|
6374
|
+
options?: never;
|
|
6375
|
+
head?: never;
|
|
6376
|
+
patch?: never;
|
|
6377
|
+
trace?: never;
|
|
6378
|
+
};
|
|
6025
6379
|
"/frontend/orders/deposit/ach": {
|
|
6026
6380
|
parameters: {
|
|
6027
6381
|
query?: never;
|
|
@@ -11330,6 +11684,65 @@ export interface paths {
|
|
|
11330
11684
|
patch?: never;
|
|
11331
11685
|
trace?: never;
|
|
11332
11686
|
};
|
|
11687
|
+
"/frontend/notifications/test": {
|
|
11688
|
+
parameters: {
|
|
11689
|
+
query?: never;
|
|
11690
|
+
header?: never;
|
|
11691
|
+
path?: never;
|
|
11692
|
+
cookie?: never;
|
|
11693
|
+
};
|
|
11694
|
+
get?: never;
|
|
11695
|
+
put?: never;
|
|
11696
|
+
/**
|
|
11697
|
+
* Send mock notification events (development only)
|
|
11698
|
+
* @description Publishes MOCK events straight to the delivery channels so a client can verify its realtime integration: `notification.created` plus a push carrier on the personal channel, and `data.changed` on the wallet channel when `wallet_id` is passed. Nothing is stored — the mock does not appear in the inbox. Available only on development deployments.
|
|
11699
|
+
*/
|
|
11700
|
+
post: {
|
|
11701
|
+
parameters: {
|
|
11702
|
+
query?: {
|
|
11703
|
+
/** @description Accessible wallet whose channel receives the mock `data.changed` signal */
|
|
11704
|
+
wallet_id?: string;
|
|
11705
|
+
};
|
|
11706
|
+
header?: never;
|
|
11707
|
+
path?: never;
|
|
11708
|
+
cookie?: never;
|
|
11709
|
+
};
|
|
11710
|
+
requestBody?: {
|
|
11711
|
+
content: {
|
|
11712
|
+
"application/json": {
|
|
11713
|
+
/** @description Push notification text */
|
|
11714
|
+
message?: string;
|
|
11715
|
+
};
|
|
11716
|
+
};
|
|
11717
|
+
};
|
|
11718
|
+
responses: {
|
|
11719
|
+
/** @description Mock events published */
|
|
11720
|
+
200: {
|
|
11721
|
+
headers: {
|
|
11722
|
+
[name: string]: unknown;
|
|
11723
|
+
};
|
|
11724
|
+
content: {
|
|
11725
|
+
"application/json": {
|
|
11726
|
+
/** @example true */
|
|
11727
|
+
success?: boolean;
|
|
11728
|
+
data?: {
|
|
11729
|
+
/** Format: uuid */
|
|
11730
|
+
notification_id?: string;
|
|
11731
|
+
/** Format: uuid */
|
|
11732
|
+
signaled_wallet_id?: string | null;
|
|
11733
|
+
};
|
|
11734
|
+
};
|
|
11735
|
+
};
|
|
11736
|
+
};
|
|
11737
|
+
401: components["responses"]["UnauthorizedError"];
|
|
11738
|
+
};
|
|
11739
|
+
};
|
|
11740
|
+
delete?: never;
|
|
11741
|
+
options?: never;
|
|
11742
|
+
head?: never;
|
|
11743
|
+
patch?: never;
|
|
11744
|
+
trace?: never;
|
|
11745
|
+
};
|
|
11333
11746
|
}
|
|
11334
11747
|
export type webhooks = Record<string, never>;
|
|
11335
11748
|
export interface components {
|
|
@@ -11633,6 +12046,14 @@ export interface components {
|
|
|
11633
12046
|
/** @enum {string|null} */
|
|
11634
12047
|
form_factor?: "PHYSICAL" | "VIRTUAL" | null;
|
|
11635
12048
|
tokenizable: boolean;
|
|
12049
|
+
/** @description What a cardholder on this program must carry. Set per program in the vendor config, so it can change without a release — read it instead of hardcoding the form. */
|
|
12050
|
+
cardholder_requirements?: {
|
|
12051
|
+
/** @enum {string} */
|
|
12052
|
+
level?: "minimal" | "basic" | "full";
|
|
12053
|
+
/** @description Required field names; address fields are dotted (address.line1) */
|
|
12054
|
+
required?: string[];
|
|
12055
|
+
required_documents?: ("gov_id_front" | "gov_id_back" | "selfie")[];
|
|
12056
|
+
};
|
|
11636
12057
|
/** Format: uuid */
|
|
11637
12058
|
account_currency: string;
|
|
11638
12059
|
card_limit: number;
|
|
@@ -11830,7 +12251,7 @@ export interface components {
|
|
|
11830
12251
|
/** Format: date-time */
|
|
11831
12252
|
updated_at?: string;
|
|
11832
12253
|
};
|
|
11833
|
-
/** @description Card / sub-account transaction (GET /cards/{card_id}/transactions and GET /sub-accounts/{sub_account_id}/transactions).
|
|
12254
|
+
/** @description Card / sub-account transaction (GET /cards/{card_id}/transactions and GET /sub-accounts/{sub_account_id}/transactions). */
|
|
11834
12255
|
IssuingTransaction: {
|
|
11835
12256
|
/** @description Transaction id in the issuing vendor */
|
|
11836
12257
|
vendor_transaction_id?: string;
|
|
@@ -11838,7 +12259,7 @@ export interface components {
|
|
|
11838
12259
|
last4?: string;
|
|
11839
12260
|
/** @example APPROVED */
|
|
11840
12261
|
status?: string;
|
|
11841
|
-
/** @example
|
|
12262
|
+
/** @example CLEARING */
|
|
11842
12263
|
transaction_type?: string;
|
|
11843
12264
|
/** @example Purchase */
|
|
11844
12265
|
group?: string;
|
|
@@ -12110,7 +12531,13 @@ export interface components {
|
|
|
12110
12531
|
* @description Source wallet UUID
|
|
12111
12532
|
*/
|
|
12112
12533
|
wallet_id: string;
|
|
12534
|
+
/** @description Amount to send, in `from_currency_id` units. With `is_reverse: true` — the amount the recipient must receive, in destination-currency units. */
|
|
12113
12535
|
amount: number;
|
|
12536
|
+
/**
|
|
12537
|
+
* @description When true, `amount` is the receive-amount and the debited amount is grossed up with fees.
|
|
12538
|
+
* @default false
|
|
12539
|
+
*/
|
|
12540
|
+
is_reverse: boolean;
|
|
12114
12541
|
/** Format: uuid */
|
|
12115
12542
|
from_currency_id: string;
|
|
12116
12543
|
/** Format: uuid */
|
|
@@ -12135,7 +12562,13 @@ export interface components {
|
|
|
12135
12562
|
* @description Source wallet UUID
|
|
12136
12563
|
*/
|
|
12137
12564
|
wallet_id: string;
|
|
12565
|
+
/** @description Amount to send, in `from_currency_id` units. With `is_reverse: true` — the amount the recipient must receive, in destination-currency units. */
|
|
12138
12566
|
amount: number;
|
|
12567
|
+
/**
|
|
12568
|
+
* @description When true, `amount` is the receive-amount and the debited amount is grossed up with fees.
|
|
12569
|
+
* @default false
|
|
12570
|
+
*/
|
|
12571
|
+
is_reverse: boolean;
|
|
12139
12572
|
/** Format: uuid */
|
|
12140
12573
|
from_currency_id: string;
|
|
12141
12574
|
/** Format: uuid */
|
|
@@ -12157,8 +12590,13 @@ export interface components {
|
|
|
12157
12590
|
FrontendExchangeOrderRequest: {
|
|
12158
12591
|
/** Format: uuid */
|
|
12159
12592
|
wallet_id: string;
|
|
12160
|
-
/** @description Amount to exchange
|
|
12593
|
+
/** @description Amount to exchange, in `from_currency_id` units. With `is_reverse: true` — the amount to receive, in `to_currency_id` units. */
|
|
12161
12594
|
amount: number;
|
|
12595
|
+
/**
|
|
12596
|
+
* @description When true, `amount` is the receive-amount and the debited amount is grossed up with fees.
|
|
12597
|
+
* @default false
|
|
12598
|
+
*/
|
|
12599
|
+
is_reverse: boolean;
|
|
12162
12600
|
/**
|
|
12163
12601
|
* Format: uuid
|
|
12164
12602
|
* @description Source currency UUID
|
|
@@ -12341,6 +12779,25 @@ export interface components {
|
|
|
12341
12779
|
destination_id: string;
|
|
12342
12780
|
amount: number;
|
|
12343
12781
|
};
|
|
12782
|
+
NotificationView: {
|
|
12783
|
+
/** Format: uuid */
|
|
12784
|
+
id: string;
|
|
12785
|
+
/** @enum {string} */
|
|
12786
|
+
type: "DEPOSIT_RECEIVED" | "TRANSFER_RECEIVED" | "ORDER_STATUS_CHANGED" | "KYC_STATUS_CHANGED";
|
|
12787
|
+
/** @description Structured fact snapshot; the client renders the presentation. Shape depends on `type`; evolution is additive-only. */
|
|
12788
|
+
payload: Record<string, never>;
|
|
12789
|
+
/** Format: uuid */
|
|
12790
|
+
wallet_id: string | null;
|
|
12791
|
+
/** Format: date-time */
|
|
12792
|
+
read_at: string | null;
|
|
12793
|
+
/** Format: date-time */
|
|
12794
|
+
created_at: string;
|
|
12795
|
+
};
|
|
12796
|
+
NotificationPreference: {
|
|
12797
|
+
/** @enum {string} */
|
|
12798
|
+
channel: "IN_APP" | "PUSH";
|
|
12799
|
+
enabled: boolean;
|
|
12800
|
+
};
|
|
12344
12801
|
};
|
|
12345
12802
|
responses: {
|
|
12346
12803
|
/** @description Authentication credentials are missing or invalid */
|
|
@@ -1067,104 +1067,6 @@ export interface paths {
|
|
|
1067
1067
|
patch?: never;
|
|
1068
1068
|
trace?: never;
|
|
1069
1069
|
};
|
|
1070
|
-
"/tenant/me": {
|
|
1071
|
-
parameters: {
|
|
1072
|
-
query?: never;
|
|
1073
|
-
header?: never;
|
|
1074
|
-
path?: never;
|
|
1075
|
-
cookie?: never;
|
|
1076
|
-
};
|
|
1077
|
-
/**
|
|
1078
|
-
* Get authenticated tenant
|
|
1079
|
-
* @deprecated
|
|
1080
|
-
* @description Returns information about the authenticated tenant
|
|
1081
|
-
*/
|
|
1082
|
-
get: {
|
|
1083
|
-
parameters: {
|
|
1084
|
-
query?: never;
|
|
1085
|
-
header?: never;
|
|
1086
|
-
path?: never;
|
|
1087
|
-
cookie?: never;
|
|
1088
|
-
};
|
|
1089
|
-
requestBody?: never;
|
|
1090
|
-
responses: {
|
|
1091
|
-
/** @description Authenticated tenant information */
|
|
1092
|
-
200: {
|
|
1093
|
-
headers: {
|
|
1094
|
-
[name: string]: unknown;
|
|
1095
|
-
};
|
|
1096
|
-
content: {
|
|
1097
|
-
"application/json": components["schemas"]["Tenant"];
|
|
1098
|
-
};
|
|
1099
|
-
};
|
|
1100
|
-
/** @description Server error */
|
|
1101
|
-
500: {
|
|
1102
|
-
headers: {
|
|
1103
|
-
[name: string]: unknown;
|
|
1104
|
-
};
|
|
1105
|
-
content: {
|
|
1106
|
-
"application/json": components["schemas"]["Error"];
|
|
1107
|
-
};
|
|
1108
|
-
};
|
|
1109
|
-
};
|
|
1110
|
-
};
|
|
1111
|
-
put?: never;
|
|
1112
|
-
post?: never;
|
|
1113
|
-
delete?: never;
|
|
1114
|
-
options?: never;
|
|
1115
|
-
head?: never;
|
|
1116
|
-
patch?: never;
|
|
1117
|
-
trace?: never;
|
|
1118
|
-
};
|
|
1119
|
-
"/tenant/config": {
|
|
1120
|
-
parameters: {
|
|
1121
|
-
query?: never;
|
|
1122
|
-
header?: never;
|
|
1123
|
-
path?: never;
|
|
1124
|
-
cookie?: never;
|
|
1125
|
-
};
|
|
1126
|
-
/**
|
|
1127
|
-
* Get tenant configuration
|
|
1128
|
-
* @deprecated
|
|
1129
|
-
* @description Returns configuration for the authenticated tenant
|
|
1130
|
-
*/
|
|
1131
|
-
get: {
|
|
1132
|
-
parameters: {
|
|
1133
|
-
query?: never;
|
|
1134
|
-
header?: never;
|
|
1135
|
-
path?: never;
|
|
1136
|
-
cookie?: never;
|
|
1137
|
-
};
|
|
1138
|
-
requestBody?: never;
|
|
1139
|
-
responses: {
|
|
1140
|
-
/** @description Tenant configuration */
|
|
1141
|
-
200: {
|
|
1142
|
-
headers: {
|
|
1143
|
-
[name: string]: unknown;
|
|
1144
|
-
};
|
|
1145
|
-
content: {
|
|
1146
|
-
"application/json": components["schemas"]["TenantConfig"];
|
|
1147
|
-
};
|
|
1148
|
-
};
|
|
1149
|
-
/** @description Server error */
|
|
1150
|
-
500: {
|
|
1151
|
-
headers: {
|
|
1152
|
-
[name: string]: unknown;
|
|
1153
|
-
};
|
|
1154
|
-
content: {
|
|
1155
|
-
"application/json": components["schemas"]["Error"];
|
|
1156
|
-
};
|
|
1157
|
-
};
|
|
1158
|
-
};
|
|
1159
|
-
};
|
|
1160
|
-
put?: never;
|
|
1161
|
-
post?: never;
|
|
1162
|
-
delete?: never;
|
|
1163
|
-
options?: never;
|
|
1164
|
-
head?: never;
|
|
1165
|
-
patch?: never;
|
|
1166
|
-
trace?: never;
|
|
1167
|
-
};
|
|
1168
1070
|
"/issuing/cards": {
|
|
1169
1071
|
parameters: {
|
|
1170
1072
|
query?: never;
|
|
@@ -2201,17 +2103,7 @@ export interface paths {
|
|
|
2201
2103
|
};
|
|
2202
2104
|
/**
|
|
2203
2105
|
* Get card transactions
|
|
2204
|
-
* @description Retrieves a list of transactions for a specific card with filtering and pagination options.
|
|
2205
|
-
* This endpoint now combines external card transactions with local top-up transactions.
|
|
2206
|
-
*
|
|
2207
|
-
* **Pagination Strategy**: Due to combining two data sources (external API and local DB),
|
|
2208
|
-
* pagination fetches larger batches from both sources to ensure proper sorting before
|
|
2209
|
-
* applying the requested pagination. This prevents missing transactions that should appear
|
|
2210
|
-
* on the current page after sorting.
|
|
2211
|
-
*
|
|
2212
|
-
* **Note**: For cards, the system needs to find the associated fiat_account to match local top-up transactions.
|
|
2213
|
-
* This should be replaced with direct card_id in transaction metadata in the future.
|
|
2214
|
-
*
|
|
2106
|
+
* @description Retrieves a list of transactions for a specific card, including card top-ups, with filtering and pagination options.
|
|
2215
2107
|
*/
|
|
2216
2108
|
get: {
|
|
2217
2109
|
parameters: {
|
|
@@ -2226,14 +2118,14 @@ export interface paths {
|
|
|
2226
2118
|
offset?: number;
|
|
2227
2119
|
/** @description Whether to use the new response format */
|
|
2228
2120
|
new_scheme?: boolean;
|
|
2229
|
-
/** @description Filter by transaction type */
|
|
2230
|
-
transaction_type?:
|
|
2231
|
-
/** @description Filter by start date (ISO 8601)
|
|
2121
|
+
/** @description Filter by transaction type (case-insensitive). Unknown values are rejected with a validation error. */
|
|
2122
|
+
transaction_type?: "AUTHORIZATION" | "CLEARING" | "REFUND" | "REVERSAL" | "DEPOSIT" | "WITHDRAWAL" | "TRANSFER" | "FEE" | "ATM" | "ACCOUNT_VERIFICATION" | "ORIGINAL_CREDIT" | "OTHER";
|
|
2123
|
+
/** @description Filter by start date (ISO 8601), matched against `cleared_at` (fallback `created_at`). */
|
|
2232
2124
|
from?: string;
|
|
2233
|
-
/** @description Filter by end date (ISO 8601)
|
|
2125
|
+
/** @description Filter by end date (ISO 8601), matched against `cleared_at` (fallback `created_at`). */
|
|
2234
2126
|
to?: string;
|
|
2235
|
-
/** @description Filter by transaction status
|
|
2236
|
-
status?: "PENDING" | "APPROVED" | "DECLINED" | "CANCELED";
|
|
2127
|
+
/** @description Filter by transaction status (case-insensitive). */
|
|
2128
|
+
status?: "PENDING" | "APPROVED" | "COMPLETED" | "DECLINED" | "CANCELED" | "REVERSED" | "EXPIRED";
|
|
2237
2129
|
};
|
|
2238
2130
|
header?: never;
|
|
2239
2131
|
path?: never;
|
|
@@ -2241,7 +2133,7 @@ export interface paths {
|
|
|
2241
2133
|
};
|
|
2242
2134
|
requestBody?: never;
|
|
2243
2135
|
responses: {
|
|
2244
|
-
/** @description List of transactions retrieved successfully (includes
|
|
2136
|
+
/** @description List of transactions retrieved successfully (includes card top-ups) */
|
|
2245
2137
|
200: {
|
|
2246
2138
|
headers: {
|
|
2247
2139
|
[name: string]: unknown;
|
|
@@ -2250,6 +2142,15 @@ export interface paths {
|
|
|
2250
2142
|
"application/json": components["schemas"]["IssuingTransactionList"];
|
|
2251
2143
|
};
|
|
2252
2144
|
};
|
|
2145
|
+
/** @description Validation error (unknown transaction_type) */
|
|
2146
|
+
400: {
|
|
2147
|
+
headers: {
|
|
2148
|
+
[name: string]: unknown;
|
|
2149
|
+
};
|
|
2150
|
+
content: {
|
|
2151
|
+
"application/json": components["schemas"]["Error"];
|
|
2152
|
+
};
|
|
2153
|
+
};
|
|
2253
2154
|
/** @description Server Error */
|
|
2254
2155
|
500: {
|
|
2255
2156
|
headers: {
|
|
@@ -8371,8 +8272,6 @@ export interface components {
|
|
|
8371
8272
|
Transaction: unknown;
|
|
8372
8273
|
CryptoCurrency: unknown;
|
|
8373
8274
|
Country: unknown;
|
|
8374
|
-
Tenant: unknown;
|
|
8375
|
-
TenantConfig: unknown;
|
|
8376
8275
|
IssuingCardList: unknown;
|
|
8377
8276
|
IssuingCard: unknown;
|
|
8378
8277
|
CardSensitiveData: unknown;
|
|
@@ -8551,7 +8551,13 @@ export interface components {
|
|
|
8551
8551
|
} | null;
|
|
8552
8552
|
};
|
|
8553
8553
|
CryptoTransferRequest: {
|
|
8554
|
+
/** @description Amount to send, in `from_currency_id` units. With `is_reverse: true` — the amount the recipient must receive, in destination-currency units. */
|
|
8554
8555
|
amount: number;
|
|
8556
|
+
/**
|
|
8557
|
+
* @description When true, `amount` is the receive-amount and the debited amount is grossed up with fees.
|
|
8558
|
+
* @default false
|
|
8559
|
+
*/
|
|
8560
|
+
is_reverse: boolean;
|
|
8555
8561
|
/** Format: uuid */
|
|
8556
8562
|
from_currency_id: string;
|
|
8557
8563
|
/** Format: uuid */
|
|
@@ -8567,7 +8573,13 @@ export interface components {
|
|
|
8567
8573
|
scheduled_at?: string;
|
|
8568
8574
|
};
|
|
8569
8575
|
OfframpOrderRequest: {
|
|
8576
|
+
/** @description Amount to send, in `from_currency_id` units. With `is_reverse: true` — the amount the recipient must receive, in destination-currency units. */
|
|
8570
8577
|
amount: number;
|
|
8578
|
+
/**
|
|
8579
|
+
* @description When true, `amount` is the receive-amount and the debited amount is grossed up with fees.
|
|
8580
|
+
* @default false
|
|
8581
|
+
*/
|
|
8582
|
+
is_reverse: boolean;
|
|
8571
8583
|
/** Format: uuid */
|
|
8572
8584
|
from_currency_id: string;
|
|
8573
8585
|
/** Format: uuid */
|
|
@@ -8590,8 +8602,13 @@ export interface components {
|
|
|
8590
8602
|
scheduled_at?: string;
|
|
8591
8603
|
};
|
|
8592
8604
|
ExchangeOrderRequest: {
|
|
8593
|
-
/** @description Amount to exchange
|
|
8605
|
+
/** @description Amount to exchange, in `from_currency_id` units. With `is_reverse: true` — the amount to receive, in `to_currency_id` units. */
|
|
8594
8606
|
amount: number;
|
|
8607
|
+
/**
|
|
8608
|
+
* @description When true, `amount` is the receive-amount and the debited amount is grossed up with fees.
|
|
8609
|
+
* @default false
|
|
8610
|
+
*/
|
|
8611
|
+
is_reverse: boolean;
|
|
8595
8612
|
/**
|
|
8596
8613
|
* Format: uuid
|
|
8597
8614
|
* @description Source currency UUID
|