squarefi-bff-api-module 1.36.99 → 1.36.101
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.
- package/dist/api/frontend.d.ts +3 -0
- package/dist/api/frontend.js +9 -0
- package/dist/api/types/autogen/apiV1External.types.d.ts +37 -2
- package/dist/api/types/autogen/apiV1Frontend.types.d.ts +70 -19
- package/dist/api/types/autogen/apiV1Legacy.types.d.ts +0 -71
- package/dist/api/types/autogen/apiV1Tenant.types.d.ts +38 -3
- package/dist/api/types/types.d.ts +15 -2
- package/package.json +1 -1
package/dist/api/frontend.d.ts
CHANGED
|
@@ -108,6 +108,9 @@ export declare const frontend: {
|
|
|
108
108
|
exchangeRates: {
|
|
109
109
|
list: (params?: API.Frontend.Reference.ExchangeRates.List.Request) => Promise<API.Frontend.Reference.ExchangeRates.List.Response>;
|
|
110
110
|
};
|
|
111
|
+
countries: {
|
|
112
|
+
list: (params?: API.Frontend.Reference.Countries.List.Request) => Promise<API.Frontend.Reference.Countries.List.Response>;
|
|
113
|
+
};
|
|
111
114
|
orderTypes: {
|
|
112
115
|
list: (params?: API.Frontend.Reference.OrderTypes.List.Request) => Promise<API.Frontend.Reference.OrderTypes.List.Response>;
|
|
113
116
|
};
|
package/dist/api/frontend.js
CHANGED
|
@@ -227,6 +227,15 @@ export const frontend = {
|
|
|
227
227
|
exchangeRates: {
|
|
228
228
|
list: (params = {}) => apiClientV1Frontend.getRequest('/frontend/reference/exchange_rates', { params }),
|
|
229
229
|
},
|
|
230
|
+
// Core's countries with `iban`: what banks of the country take as the account of an incoming SWIFT payment.
|
|
231
|
+
// MANDATORY — only an IBAN (label the SWIFT account field "IBAN"); OPTIONAL — an IBAN or a domestic number;
|
|
232
|
+
// NONE — no IBANs. Look the bank up by the BIC's country (letters 5–6), not the beneficiary's, and join to
|
|
233
|
+
// `list.countries` by `iso2`. The backend pages it (50 by default), so the whole list is asked for by default.
|
|
234
|
+
countries: {
|
|
235
|
+
list: (params = {}) => apiClientV1Frontend.getRequest('/frontend/reference/countries', {
|
|
236
|
+
params: { limit: 500, ...params },
|
|
237
|
+
}),
|
|
238
|
+
},
|
|
230
239
|
// Only the types enabled for the tenant (a `tenant_order_type_rates` row), paged — 50 by default, 500 at most.
|
|
231
240
|
orderTypes: {
|
|
232
241
|
list: (params = {}) => apiClientV1Frontend.getRequest('/frontend/reference/order_types', { params }),
|
|
@@ -6624,6 +6624,8 @@ export interface paths {
|
|
|
6624
6624
|
* List countries
|
|
6625
6625
|
* @description Returns countries with ISO codes, phone codes, currency info, and flags.
|
|
6626
6626
|
*
|
|
6627
|
+
* `iban` says what the country's banks take as the account of an incoming SWIFT payment: `MANDATORY` — only an IBAN (a SWIFT destination to such a bank is refused with `IBAN_REQUIRED` otherwise), `OPTIONAL` — an IBAN or a domestic account number, `NONE` — no IBANs in the country.
|
|
6628
|
+
*
|
|
6627
6629
|
* **Authentication**: x-api-key header required
|
|
6628
6630
|
*
|
|
6629
6631
|
*/
|
|
@@ -6653,7 +6655,12 @@ export interface paths {
|
|
|
6653
6655
|
[name: string]: unknown;
|
|
6654
6656
|
};
|
|
6655
6657
|
content: {
|
|
6656
|
-
"application/json":
|
|
6658
|
+
"application/json": {
|
|
6659
|
+
/** @example true */
|
|
6660
|
+
success: boolean;
|
|
6661
|
+
data: components["schemas"]["ReferenceCountry"][];
|
|
6662
|
+
pagination?: components["schemas"]["PaginationResponse"];
|
|
6663
|
+
};
|
|
6657
6664
|
};
|
|
6658
6665
|
};
|
|
6659
6666
|
401: components["responses"]["Unauthorized"];
|
|
@@ -8333,7 +8340,7 @@ export interface components {
|
|
|
8333
8340
|
/** @example iban */
|
|
8334
8341
|
field: string;
|
|
8335
8342
|
/**
|
|
8336
|
-
* @description Machine-readable reason. Bank details: `REQUIRED`, `IBAN_WRONG_FORMAT`, `IBAN_INVALID_CHARACTERS`, `IBAN_COUNTRY_NOT_SUPPORTED`, `IBAN_WRONG_LENGTH`, `IBAN_WRONG_BBAN_FORMAT`, `IBAN_WRONG_CHECKSUM`, `IBAN_WRONG_NATIONAL_CHECKSUM`, `IBAN_QR_NOT_ALLOWED`, `IBAN_NOT_SEPA`, `IBAN_BIC_COUNTRY_MISMATCH`, `BIC_WRONG_FORMAT`, `BIC_UNKNOWN_COUNTRY`, `BIC_TEST_CODE`, `ROUTING_NUMBER_INVALID`, `ACCOUNT_NUMBER_INVALID`, `SORT_CODE_INVALID`, `WRONG_IDENTIFIER_TYPE`, `INVALID_VALUE`; reference data: `BANK_COUNTRY_MISMATCH`, `VALIDATION_ERROR`; dry run only: `INVALID_TYPE`. New codes may be added — show `message` for an unknown one.
|
|
8343
|
+
* @description Machine-readable reason. Bank details: `REQUIRED`, `IBAN_WRONG_FORMAT`, `IBAN_INVALID_CHARACTERS`, `IBAN_COUNTRY_NOT_SUPPORTED`, `IBAN_WRONG_LENGTH`, `IBAN_WRONG_BBAN_FORMAT`, `IBAN_WRONG_CHECKSUM`, `IBAN_WRONG_NATIONAL_CHECKSUM`, `IBAN_QR_NOT_ALLOWED`, `IBAN_NOT_SEPA`, `IBAN_REQUIRED`, `IBAN_BIC_COUNTRY_MISMATCH`, `BIC_WRONG_FORMAT`, `BIC_UNKNOWN_COUNTRY`, `BIC_TEST_CODE`, `ROUTING_NUMBER_INVALID`, `ACCOUNT_NUMBER_INVALID`, `SORT_CODE_INVALID`, `WRONG_IDENTIFIER_TYPE`, `INVALID_VALUE`; reference data: `BANK_COUNTRY_MISMATCH`, `VALIDATION_ERROR`; dry run only: `INVALID_TYPE`. New codes may be added — show `message` for an unknown one.
|
|
8337
8344
|
* @example IBAN_NOT_SEPA
|
|
8338
8345
|
*/
|
|
8339
8346
|
code: string;
|
|
@@ -8350,6 +8357,34 @@ export interface components {
|
|
|
8350
8357
|
*/
|
|
8351
8358
|
detected?: "IBAN" | "BIC" | "ROUTING_NUMBER";
|
|
8352
8359
|
};
|
|
8360
|
+
/** @description A country of the reference. `id` is the `country_id` of addresses (bank and beneficiary address of a destination). `iban` says what banks of the country take as the account of an incoming SWIFT payment: `MANDATORY` — only an IBAN, a SWIFT destination to such a bank is refused with `IBAN_REQUIRED` for anything else; `OPTIONAL` — the country issues IBANs, its banks also take a domestic account number; `NONE` — the country issues no IBANs. */
|
|
8361
|
+
ReferenceCountry: {
|
|
8362
|
+
/** @example 231 */
|
|
8363
|
+
id: number;
|
|
8364
|
+
/** @example United Arab Emirates */
|
|
8365
|
+
name: string;
|
|
8366
|
+
/** @example AE */
|
|
8367
|
+
iso2: string;
|
|
8368
|
+
/** @example ARE */
|
|
8369
|
+
iso3?: string | null;
|
|
8370
|
+
/** @example 971 */
|
|
8371
|
+
phonecode?: string | null;
|
|
8372
|
+
/** @example AED */
|
|
8373
|
+
currency?: string | null;
|
|
8374
|
+
currency_name?: string | null;
|
|
8375
|
+
currency_symbol?: string | null;
|
|
8376
|
+
/** @example Asia */
|
|
8377
|
+
region?: string | null;
|
|
8378
|
+
/** @example Western Asia */
|
|
8379
|
+
subregion?: string | null;
|
|
8380
|
+
emoji?: string | null;
|
|
8381
|
+
nationality?: string | null;
|
|
8382
|
+
/**
|
|
8383
|
+
* @example MANDATORY
|
|
8384
|
+
* @enum {string}
|
|
8385
|
+
*/
|
|
8386
|
+
iban: "MANDATORY" | "OPTIONAL" | "NONE";
|
|
8387
|
+
};
|
|
8353
8388
|
DestinationValidationResult: {
|
|
8354
8389
|
/** @description True when creating the destination with this payload would pass every check */
|
|
8355
8390
|
valid: boolean;
|
|
@@ -10916,6 +10916,8 @@ export interface paths {
|
|
|
10916
10916
|
* List countries
|
|
10917
10917
|
* @description Returns countries with ISO codes, phone codes, currency info.
|
|
10918
10918
|
*
|
|
10919
|
+
* `iban` says what the country's banks take as the account of an incoming SWIFT payment: `MANDATORY` — only an IBAN (a SWIFT destination to such a bank is refused with `IBAN_REQUIRED` otherwise), `OPTIONAL` — an IBAN or a domestic account number, `NONE` — no IBANs in the country.
|
|
10920
|
+
*
|
|
10919
10921
|
* **Authentication**: Bearer token + x-tenant-id header
|
|
10920
10922
|
*
|
|
10921
10923
|
*/
|
|
@@ -10940,7 +10942,14 @@ export interface paths {
|
|
|
10940
10942
|
headers: {
|
|
10941
10943
|
[name: string]: unknown;
|
|
10942
10944
|
};
|
|
10943
|
-
content
|
|
10945
|
+
content: {
|
|
10946
|
+
"application/json": {
|
|
10947
|
+
/** @example true */
|
|
10948
|
+
success: boolean;
|
|
10949
|
+
data: components["schemas"]["ReferenceCountry"][];
|
|
10950
|
+
pagination?: components["schemas"]["PaginationResponse"];
|
|
10951
|
+
};
|
|
10952
|
+
};
|
|
10944
10953
|
};
|
|
10945
10954
|
401: components["responses"]["UnauthorizedError"];
|
|
10946
10955
|
};
|
|
@@ -16570,7 +16579,7 @@ export interface paths {
|
|
|
16570
16579
|
};
|
|
16571
16580
|
/**
|
|
16572
16581
|
* The form of an entity for a set of purposes
|
|
16573
|
-
* @description Built on every call from the tenant's requirement profiles and the entity. Without `rails` and `programs` it is the base form. With one rail it is that rail's form: the base profile, the tenant's rail profile and the vendor's minimum merged: a field required by any of them is required, `review` wins over `auto`, and a field is shown when any of them shows it (one asking it without a condition — the vendor's minimum always — shows it always); profiles whose conditions read each other in a circle answer `409 KYC_FORM_CONDITIONS_CYCLE`. Sections are the groups to draw, `visible_when` the show logic, `required_by` the purposes a field is required for, the locks (`saved`, `from_document`, `pending`, `status`) what the client cannot change, `schema_version` what to echo back. Fields that come from the identity document (names, date of birth, citizenship, the document number and dates) are left out until the document is verified; the document itself is asked: its type `gov_id_type` (`PASSPORT`, `ID_CARD`, `RESIDENCE_PERMIT`, `DRIVERS` — the codes `…/owners/{owner_id}/document` takes as `type` too), issuing country `gov_id_country` and photos `gov_id_front` and `gov_id_back` (shown unless a passport) — saved, and no longer asked, once it is verified; `state: complete` on a rail form means nothing is left to ask and the client goes straight to the rail's terms. With one program and `wallet_id` it is the form before a card: the level the program's vendor demands (`minimal`: name, email, phone; `basic`: plus date of birth, citizenship, gender, identity document type and number, residential address; `declared` / `full`: plus the identity document and the face, verified after the form) merged with the tenant's binding for the program, without the base form; what the personal entity already holds is locked `saved`, so `state: complete` means the card can be asked for at once. Several rails and programs at once is the multi form: the base form, every rail and every program merged, each field once with `required_by` naming the purposes. Access: the owner of the entity, or an owner / admin of a wallet it is linked to.
|
|
16582
|
+
* @description Built on every call from the tenant's requirement profiles and the entity. Without `rails` and `programs` it is the base form. With one rail it is that rail's form: the base profile, the tenant's rail profile and the vendor's minimum merged: a field required by any of them is required, `review` wins over `auto`, and a field is shown when any of them shows it (one asking it without a condition — the vendor's minimum always — shows it always); profiles whose conditions read each other in a circle answer `409 KYC_FORM_CONDITIONS_CYCLE`. Sections are the groups to draw, `visible_when` the show logic, `required_by` the purposes a field is required for, the locks (`saved`, `from_document`, `pending`, `status`) what the client cannot change, `schema_version` what to echo back. Fields that come from the identity document (names, date of birth, citizenship, the document number and dates) are left out until the document is verified; the document itself is asked: its type `gov_id_type` (`PASSPORT`, `ID_CARD`, `RESIDENCE_PERMIT`, `DRIVERS` — the codes `…/owners/{owner_id}/document` takes as `type` too), issuing country `gov_id_country` and photos `gov_id_front` and `gov_id_back` (shown unless a passport) — saved, and no longer asked, once it is verified; `state: complete` on a rail form means nothing is left to ask and the client goes straight to the rail's terms. With one program and `wallet_id` it is the form before a card: the level the program's vendor demands (`minimal`: name, email, phone; `basic`: plus date of birth, citizenship, gender, identity document type and number, residential address; `declared` / `full`: plus the identity document and the face, verified after the form) merged with the tenant's binding for the program, without the base form; what the personal entity already holds is locked `saved`, so `state: complete` means the card can be asked for at once. Several rails and programs at once is the multi form: the base form, every rail and every program merged, each field once with `required_by` naming the purposes. A form whose last submission is `returned` comes back with that submission's answers in `values` — its files too, as files of the draft (`saved: false`, removable by `DELETE …/forms/uploads/{upload_id}`) — until the client saves, uploads or sends again. Access: the owner of the entity, or an owner / admin of a wallet it is linked to.
|
|
16574
16583
|
*/
|
|
16575
16584
|
get: {
|
|
16576
16585
|
parameters: {
|
|
@@ -16646,7 +16655,7 @@ export interface paths {
|
|
|
16646
16655
|
get?: never;
|
|
16647
16656
|
/**
|
|
16648
16657
|
* Save the draft of a form
|
|
16649
|
-
* @description The form is the one `rails` and `programs` name, as for `GET …/forms`. Replaces the draft as a whole with the given values of open fields. Types are checked, rules and requiredness are not — except that owner shares over 100% in total
|
|
16658
|
+
* @description The form is the one `rails` and `programs` name, as for `GET …/forms`. Replaces the draft as a whole with the given values of open fields; the files of the draft stay, and so do those of a `returned` last submission (they carry over into the draft, those removed excepted). Types are checked, rules and requiredness are not — except that owner shares over 100% in total, a value whose condition reads an empty required source, and a change to a saved owner the form does not allow (left out of the list, its value cleared, or changed outside a `returned` form) are refused here too, as on the submission: the draft is not saved. Nothing is written to the KYC entity. The first draft of a business form moves the application to `PENDING`. The entity's owner, or an owner or admin of a linked wallet.
|
|
16650
16659
|
*/
|
|
16651
16660
|
put: {
|
|
16652
16661
|
parameters: {
|
|
@@ -16726,7 +16735,7 @@ export interface paths {
|
|
|
16726
16735
|
put?: never;
|
|
16727
16736
|
/**
|
|
16728
16737
|
* Upload a file into a file field of a form
|
|
16729
|
-
* @description The form is the one `rails` and `programs` name. Multipart: `field` (the key of an open file field: shown, not locked) and `file`. PDF, JPEG or PNG up to 20 MB, told by the bytes — a renamed file is refused with `DOCUMENT_REJECTED`; a field whose `file.accept` lists only images (the photos of the identity document, `gov_id_front` / `gov_id_back`) refuses a PDF the same way. A field that takes no files now — unknown, not a file field, locked (a form read-only by the application status locks every field), or hidden by its condition — is refused with `FORM_FIELD_NOT_ALLOWED`, whatever the file. The file stays in the draft until the submission is applied; a file of a field hidden by its condition stays in the draft's storage (removable by its `id`), is not listed in the form's `values` while hidden, and does not go with the submission. The photos of the identity document go to the identity provider once the submission waits on the verification. The entity's owner, or an owner or admin of a linked wallet.
|
|
16738
|
+
* @description The form is the one `rails` and `programs` name. Multipart: `field` (the key of an open file field: shown, not locked) and `file`. PDF, JPEG or PNG up to 20 MB, told by the bytes — a renamed file is refused with `DOCUMENT_REJECTED`; a field whose `file.accept` lists only images (the photos of the identity document, `gov_id_front` / `gov_id_back`) refuses a PDF the same way. A field that takes no files now — unknown, not a file field, locked (a form read-only by the application status locks every field), or hidden by its condition — is refused with `FORM_FIELD_NOT_ALLOWED`, whatever the file. The file stays in the draft until the submission is applied; a file of a field hidden by its condition stays in the draft's storage (removable by its `id`), is not listed in the form's `values` while hidden, and does not go with the submission. The photos of the identity document go to the identity provider once the submission waits on the verification. On a form whose last submission is `returned` the files of that submission count toward `file.max_files` of the field and carry over into the draft with the new file. The entity's owner, or an owner or admin of a linked wallet.
|
|
16730
16739
|
*/
|
|
16731
16740
|
post: {
|
|
16732
16741
|
parameters: {
|
|
@@ -16834,7 +16843,7 @@ export interface paths {
|
|
|
16834
16843
|
post?: never;
|
|
16835
16844
|
/**
|
|
16836
16845
|
* Remove a file from the draft of a form
|
|
16837
|
-
* @description The form is the one `rails` and `programs` name. Only a file of the draft (`saved: false`) can be removed; a document already in the KYC entity never is. The entity's owner, or an owner or admin of a linked wallet.
|
|
16846
|
+
* @description The form is the one `rails` and `programs` name. Only a file of the draft (`saved: false`) can be removed — a file of a returned submission is one too: the submission opens as the draft without it, its own record keeps the file; a document already in the KYC entity never is. The entity's owner, or an owner or admin of a linked wallet.
|
|
16838
16847
|
*/
|
|
16839
16848
|
delete: {
|
|
16840
16849
|
parameters: {
|
|
@@ -16850,7 +16859,7 @@ export interface paths {
|
|
|
16850
16859
|
path: {
|
|
16851
16860
|
/** @description `kyc_entity.id` of the caller, or of an entity linked to a wallet the caller owns or administers */
|
|
16852
16861
|
entity_id: components["parameters"]["KycFormsEntityId"];
|
|
16853
|
-
/** @description The `id` of a file in the draft (`saved: false`) */
|
|
16862
|
+
/** @description The `id` of a file in the draft or in the returned submission of the form (`saved: false`) */
|
|
16854
16863
|
upload_id: components["parameters"]["KycFormsUploadId"];
|
|
16855
16864
|
};
|
|
16856
16865
|
cookie?: never;
|
|
@@ -16873,18 +16882,18 @@ export interface paths {
|
|
|
16873
16882
|
};
|
|
16874
16883
|
};
|
|
16875
16884
|
};
|
|
16876
|
-
/** @description `VALIDATION_ERROR` — an id (`entity_id`, `upload_id`, `wallet_id`, `rails`, `programs`) is not a uuid; `INVALID_REQUEST` — `wallet_id` missing for a form over card programs; `KYC_FORMS_NOT_ENABLED
|
|
16885
|
+
/** @description `VALIDATION_ERROR` — an id (`entity_id`, `upload_id`, `wallet_id`, `rails`, `programs`) is not a uuid (a message only); `INVALID_REQUEST` — `wallet_id` missing for a form over card programs; `FORM_TARGET_UNSUPPORTED` — a card program named on a business entity; `KYC_BASE_BINDING_MISSING` — the tenant has no base form for this client type; `KYC_FORMS_NOT_ENABLED` — the tenant still runs KYC through the BFF. */
|
|
16877
16886
|
400: {
|
|
16878
16887
|
headers: {
|
|
16879
16888
|
[name: string]: unknown;
|
|
16880
16889
|
};
|
|
16881
16890
|
content: {
|
|
16882
|
-
"application/json": components["schemas"]["
|
|
16891
|
+
"application/json": components["schemas"]["KycFormsErrorResponse"];
|
|
16883
16892
|
};
|
|
16884
16893
|
};
|
|
16885
16894
|
401: components["responses"]["UnauthorizedError"];
|
|
16886
16895
|
403: components["responses"]["KycFormsAccessDenied"];
|
|
16887
|
-
/** @description
|
|
16896
|
+
/** @description `NOT_FOUND` — the entity does not exist or belongs to another tenant, a rail / program of the query does not exist for the tenant, or the upload is not in the draft or in the returned submission of this form — a saved document is never removed here. */
|
|
16888
16897
|
404: {
|
|
16889
16898
|
headers: {
|
|
16890
16899
|
[name: string]: unknown;
|
|
@@ -16893,6 +16902,7 @@ export interface paths {
|
|
|
16893
16902
|
"application/json": components["schemas"]["ErrorResponse"];
|
|
16894
16903
|
};
|
|
16895
16904
|
};
|
|
16905
|
+
409: components["responses"]["KycFormsConditionsCycle"];
|
|
16896
16906
|
};
|
|
16897
16907
|
};
|
|
16898
16908
|
options?: never;
|
|
@@ -16911,7 +16921,7 @@ export interface paths {
|
|
|
16911
16921
|
put?: never;
|
|
16912
16922
|
/**
|
|
16913
16923
|
* Send a form
|
|
16914
|
-
* @description The form is the one `rails` and `programs` name. The full check of every open field (all errors in one `VALIDATION_ERROR`), then a submission: `awaiting_verification` when the identity document and face are still needed, `applied` when every profile of the form writes the answers into the KYC entity at once, `in_review` when compliance decides (any profile of the form in review mode). Answers `200` with the form in its new state. One submission of a form at a time. A rail form does not change the application status; once its submission is approved, the rail is submitted through the wallet's existing `POST /frontend/wallets/{wallet_id}/kyc-rails/{rail_id}`. A card form is `auto` unless a profile of it says otherwise and never changes the application status; once applied, the cardholder is created through `POST /frontend/issuing/cardholders` with `user_data_id`. A multi form moves the application like the base form it includes; once applied, every rail and program of the set is satisfied from the shared data. The entity's owner, or an owner or admin of a linked wallet.
|
|
16924
|
+
* @description The form is the one `rails` and `programs` name. The full check of every open field (all errors in one `VALIDATION_ERROR`), then a submission: `awaiting_verification` when the identity document and face are still needed, `applied` when every profile of the form writes the answers into the KYC entity at once, `in_review` when compliance decides (any profile of the form in review mode). Answers `200` with the form in its new state. One submission of a form at a time. A rail form does not change the application status; once its submission is approved, the rail is submitted through the wallet's existing `POST /frontend/wallets/{wallet_id}/kyc-rails/{rail_id}`. A card form is `auto` unless a profile of it says otherwise and never changes the application status; once applied, the cardholder is created through `POST /frontend/issuing/cardholders` with `user_data_id`. A multi form moves the application like the base form it includes; once applied, every rail and program of the set is satisfied from the shared data. A `returned` submission sent again keeps its files that were not removed. A saved beneficial owner (an item of `beneficial_owners` with an `id`) is the entity's: a list without one, a changed saved value outside a `returned` form, and a saved value sent empty are refused with `VALIDATION_ERROR`, as in the draft. The entity's owner, or an owner or admin of a linked wallet.
|
|
16915
16925
|
*/
|
|
16916
16926
|
post: {
|
|
16917
16927
|
parameters: {
|
|
@@ -17878,7 +17888,7 @@ export interface components {
|
|
|
17878
17888
|
/** @example iban */
|
|
17879
17889
|
field: string;
|
|
17880
17890
|
/**
|
|
17881
|
-
* @description Machine-readable reason. Bank details: `REQUIRED`, `IBAN_WRONG_FORMAT`, `IBAN_INVALID_CHARACTERS`, `IBAN_COUNTRY_NOT_SUPPORTED`, `IBAN_WRONG_LENGTH`, `IBAN_WRONG_BBAN_FORMAT`, `IBAN_WRONG_CHECKSUM`, `IBAN_WRONG_NATIONAL_CHECKSUM`, `IBAN_QR_NOT_ALLOWED`, `IBAN_NOT_SEPA`, `IBAN_BIC_COUNTRY_MISMATCH`, `BIC_WRONG_FORMAT`, `BIC_UNKNOWN_COUNTRY`, `BIC_TEST_CODE`, `ROUTING_NUMBER_INVALID`, `ACCOUNT_NUMBER_INVALID`, `SORT_CODE_INVALID`, `WRONG_IDENTIFIER_TYPE`, `INVALID_VALUE`; reference data: `BANK_COUNTRY_MISMATCH`, `VALIDATION_ERROR`; dry run only: `INVALID_TYPE`. New codes may be added — show `message` for an unknown one.
|
|
17891
|
+
* @description Machine-readable reason. Bank details: `REQUIRED`, `IBAN_WRONG_FORMAT`, `IBAN_INVALID_CHARACTERS`, `IBAN_COUNTRY_NOT_SUPPORTED`, `IBAN_WRONG_LENGTH`, `IBAN_WRONG_BBAN_FORMAT`, `IBAN_WRONG_CHECKSUM`, `IBAN_WRONG_NATIONAL_CHECKSUM`, `IBAN_QR_NOT_ALLOWED`, `IBAN_NOT_SEPA`, `IBAN_REQUIRED`, `IBAN_BIC_COUNTRY_MISMATCH`, `BIC_WRONG_FORMAT`, `BIC_UNKNOWN_COUNTRY`, `BIC_TEST_CODE`, `ROUTING_NUMBER_INVALID`, `ACCOUNT_NUMBER_INVALID`, `SORT_CODE_INVALID`, `WRONG_IDENTIFIER_TYPE`, `INVALID_VALUE`; reference data: `BANK_COUNTRY_MISMATCH`, `VALIDATION_ERROR`; dry run only: `INVALID_TYPE`. New codes may be added — show `message` for an unknown one.
|
|
17882
17892
|
* @example IBAN_NOT_SEPA
|
|
17883
17893
|
*/
|
|
17884
17894
|
code: string;
|
|
@@ -17895,6 +17905,34 @@ export interface components {
|
|
|
17895
17905
|
*/
|
|
17896
17906
|
detected?: "IBAN" | "BIC" | "ROUTING_NUMBER";
|
|
17897
17907
|
};
|
|
17908
|
+
/** @description A country of the reference. `id` is the `country_id` of addresses (bank and beneficiary address of a destination). `iban` says what banks of the country take as the account of an incoming SWIFT payment: `MANDATORY` — only an IBAN, a SWIFT destination to such a bank is refused with `IBAN_REQUIRED` for anything else; `OPTIONAL` — the country issues IBANs, its banks also take a domestic account number; `NONE` — the country issues no IBANs. */
|
|
17909
|
+
ReferenceCountry: {
|
|
17910
|
+
/** @example 231 */
|
|
17911
|
+
id: number;
|
|
17912
|
+
/** @example United Arab Emirates */
|
|
17913
|
+
name: string;
|
|
17914
|
+
/** @example AE */
|
|
17915
|
+
iso2: string;
|
|
17916
|
+
/** @example ARE */
|
|
17917
|
+
iso3?: string | null;
|
|
17918
|
+
/** @example 971 */
|
|
17919
|
+
phonecode?: string | null;
|
|
17920
|
+
/** @example AED */
|
|
17921
|
+
currency?: string | null;
|
|
17922
|
+
currency_name?: string | null;
|
|
17923
|
+
currency_symbol?: string | null;
|
|
17924
|
+
/** @example Asia */
|
|
17925
|
+
region?: string | null;
|
|
17926
|
+
/** @example Western Asia */
|
|
17927
|
+
subregion?: string | null;
|
|
17928
|
+
emoji?: string | null;
|
|
17929
|
+
nationality?: string | null;
|
|
17930
|
+
/**
|
|
17931
|
+
* @example MANDATORY
|
|
17932
|
+
* @enum {string}
|
|
17933
|
+
*/
|
|
17934
|
+
iban: "MANDATORY" | "OPTIONAL" | "NONE";
|
|
17935
|
+
};
|
|
17898
17936
|
DestinationValidationResult: {
|
|
17899
17937
|
/** @description True when creating the destination with this payload would pass every check */
|
|
17900
17938
|
valid: boolean;
|
|
@@ -20670,11 +20708,11 @@ export interface components {
|
|
|
20670
20708
|
file_name: string | null;
|
|
20671
20709
|
/** Format: date-time */
|
|
20672
20710
|
uploaded_at: string;
|
|
20673
|
-
/** @description false — in the draft, deletable; true — already a KYC document, never removed here. */
|
|
20711
|
+
/** @description false — in the draft (a returned submission's files included until it is sent again), deletable; true — already a KYC document, never removed here. */
|
|
20674
20712
|
saved: boolean;
|
|
20675
20713
|
};
|
|
20676
20714
|
/**
|
|
20677
|
-
* @description One item of a `list` field (`beneficial_owners`): an object keyed by the `item.fields[].key` of the field, each value shaped by that item field's `type` (an item field never takes files). `id` is set on a row already saved in the KYC entity (for an owner, the `owner_id` of the owner routes); send it back to keep the row, leave it out for a new one.
|
|
20715
|
+
* @description One item of a `list` field (`beneficial_owners`): an object keyed by the `item.fields[].key` of the field, each value shaped by that item field's `type` (an item field never takes files). `id` is set on a row already saved in the KYC entity (for an owner, the `owner_id` of the owner routes); send it back to keep the row, leave it out for a new one. A saved row is the entity's: the client never removes it — a list (or a draft's list, an empty or `null` one included) without an `id` the form gave is refused with `VALIDATION_ERROR` on the list key, «A saved beneficial owner cannot be removed; contact support»; compliance removes one. Nor does its `owner_type` change, nor is a saved value of it cleared (sent empty: `VALIDATION_ERROR` on the item field, «A saved value cannot be cleared; correct it or contact support»; left out of the item: kept). On a `returned` form the client corrects the other values of the item fields the form asks; outside a return a changed saved value is refused (`VALIDATION_ERROR`, «A saved value cannot be changed; contact support»). Messages come in the language of the form. Do not offer to delete an item with an `id`, nor to change its type.
|
|
20678
20716
|
* @example {
|
|
20679
20717
|
* "id": "2d7c1b9e-4f30-4a8c-9e21-7b6a5c4d3e2f",
|
|
20680
20718
|
* "owner_type": "individual",
|
|
@@ -20690,7 +20728,7 @@ export interface components {
|
|
|
20690
20728
|
KycFormsListItemValue: {
|
|
20691
20729
|
/**
|
|
20692
20730
|
* Format: uuid
|
|
20693
|
-
* @description The saved row; absent on an item that is not saved yet.
|
|
20731
|
+
* @description The saved row — not removable by the client; absent on an item that is not saved yet, which the client adds and removes freely.
|
|
20694
20732
|
*/
|
|
20695
20733
|
id?: string;
|
|
20696
20734
|
} & {
|
|
@@ -20897,11 +20935,19 @@ export interface components {
|
|
|
20897
20935
|
saved: boolean;
|
|
20898
20936
|
};
|
|
20899
20937
|
};
|
|
20900
|
-
/** @description The base form in the overview. */
|
|
20938
|
+
/** @description The base form in the overview, with the newest submission of the application. `state` and `missing_required` are the base form's own; `submission` and `target` may come from a multi form over it. */
|
|
20901
20939
|
KycFormsFormSummary: {
|
|
20902
20940
|
state: components["schemas"]["KycFormsFormState"];
|
|
20903
20941
|
missing_required: number;
|
|
20904
|
-
submission:
|
|
20942
|
+
/** @description The newest submission of the application: of the base form or of a multi form over it, whatever set it was sent under. `target` names that form. */
|
|
20943
|
+
submission: components["schemas"]["KycFormsSubmission"] | null;
|
|
20944
|
+
/** @description The form the application was last sent under: open `GET …/forms` with these `rails`, `programs` and `wallet_id` to show a returned submission with its `comment` on any device, and send it again under the same set to close the return. Empty `rails` and `programs` are the base form (also when nothing was sent yet: then `wallet_id` is null). `wallet_id` is the wallet the submission was sent for, the entity's first linked wallet when no other was asked for, so it is not null for a base form of an entity linked to a wallet; pass it through as it is. To anyone but the owner of the entity — an admin of a linked wallet — only `rails` are named (`programs` empty, `wallet_id` null): like `cards[]`, which wallets the application was sent in and for which cards is the owner's to see; a form over rails alone opens the same without `wallet_id`. */
|
|
20945
|
+
target: {
|
|
20946
|
+
rails: string[];
|
|
20947
|
+
programs: string[];
|
|
20948
|
+
/** Format: uuid */
|
|
20949
|
+
wallet_id: string | null;
|
|
20950
|
+
};
|
|
20905
20951
|
};
|
|
20906
20952
|
KycFormsOverview: {
|
|
20907
20953
|
/** @example true */
|
|
@@ -20919,6 +20965,11 @@ export interface components {
|
|
|
20919
20965
|
* "id": "7b0f3c52-1d2e-4a6b-8f90-3c4d5e6f7a81",
|
|
20920
20966
|
* "status": "awaiting_verification",
|
|
20921
20967
|
* "comment": null
|
|
20968
|
+
* },
|
|
20969
|
+
* "target": {
|
|
20970
|
+
* "rails": [],
|
|
20971
|
+
* "programs": [],
|
|
20972
|
+
* "wallet_id": null
|
|
20922
20973
|
* }
|
|
20923
20974
|
* },
|
|
20924
20975
|
* "verification": {
|
|
@@ -20936,7 +20987,7 @@ export interface components {
|
|
|
20936
20987
|
entity_type: "individual" | "business";
|
|
20937
20988
|
status: components["schemas"]["KycFormsEntityStatus"];
|
|
20938
20989
|
/**
|
|
20939
|
-
* @description Build the screen by this, not by `status`. `not_required` — the tenant asks nothing of this client type (`base_form` is null); `not_started` — the base form was not started; `incomplete` — a draft exists; `action_required` — the client's move: pass the identity check (`next_step: verification`), or, for a business, get the owners through theirs (`next_step: owners`); `in_review` — the identity provider or compliance is looking; `resubmit` — returned by compliance, the form is open again with `submission.comment
|
|
20990
|
+
* @description Build the screen by this, not by `status`. `not_required` — the tenant asks nothing of this client type (`base_form` is null); `not_started` — the base form was not started; `incomplete` — a draft exists; `action_required` — the client's move: pass the identity check (`next_step: verification`), or, for a business, get the owners through theirs (`next_step: owners`); `in_review` — the identity provider or compliance is looking; `resubmit` — returned by compliance, the form is open again with `submission.comment` (open it with `base_form.target`); `on_hold` — frozen by compliance; `verified` — approved; `expired` — no activity on the application for over three months: a passed identity check brings it back (`next_step: verification`), then compliance looks again; `rejected` — refused, the form is read-only; `offboarded` — compliance ended the relationship, final; `unknown` — a status this contract does not know. The stage of each `status`: `APPROVED` → `verified`; `REJECT`, `DECLINED`, `DOUBLE` → `rejected`; `OFFBOARDED` → `offboarded`; `EXPIRED` → `expired`; `HOLD` → `on_hold`; `WAITING_ON_REVIEW` → `in_review`; `NEEDS_ATTENTION` → `resubmit`; `WAITING_ON_UBOS` → `action_required` while an owner other than the filler's row has a check to start, finish or redo (`next_step: owners`), else `in_review`; `UNVERIFIED`, `PENDING`, `SOFT_REJECT` → by the base form and the identity check: `not_required` (no base form), `not_started`, `incomplete` (a draft), `action_required` (the check is the move), `in_review` (sent, with compliance or the provider), `resubmit` (the latest submission was returned) — the forms flow never sets `SOFT_REJECT`, one left by the old flow shows the screen of its form like `PENDING`; `PROCESSING` → `unknown` (the forms flow never sets it, an old-flow vendor sync may leave it).
|
|
20940
20991
|
* @enum {string}
|
|
20941
20992
|
*/
|
|
20942
20993
|
stage: "not_required" | "not_started" | "incomplete" | "action_required" | "in_review" | "resubmit" | "on_hold" | "verified" | "expired" | "rejected" | "offboarded" | "unknown";
|
|
@@ -21268,7 +21319,7 @@ export interface components {
|
|
|
21268
21319
|
"application/json": components["schemas"]["ErrorResponse"];
|
|
21269
21320
|
};
|
|
21270
21321
|
};
|
|
21271
|
-
/** @description `VALIDATION_ERROR` — field errors in `details.fields[key] = [message]` (on a business form the owner list the KYC tables refuse, and owner shares adding up to more than 100%, come back under `beneficial_owners`; a value sent for a field whose condition reads a source left empty or wrong comes back as the error of the source, e.g. `beneficial_owners[0].role`), or a message only for a malformed body (`schema_version` missing or longer than 64, `values` not an object) and a path id that is not a uuid; `FORM_FIELD_NOT_ALLOWED` — a key the form does not accept (unknown, locked, hidden, a file field), `details.fields = [key]`, the whole request refused; `FORM_TARGET_UNSUPPORTED` — a card program named on a business entity; `INVALID_REQUEST` — `wallet_id` missing for a form over card programs; `KYC_BASE_BINDING_MISSING` — the tenant has no base form for this client type; `KYC_FORMS_NOT_ENABLED` — the tenant is not on the forms flow */
|
|
21322
|
+
/** @description `VALIDATION_ERROR` — field errors in `details.fields[key] = [message]` (on a business form the owner list the KYC tables refuse, and owner shares adding up to more than 100%, come back under `beneficial_owners`; a saved beneficial owner (an item with an `id`) left out of the list — an empty or `null` list included — comes back under `beneficial_owners`, a saved value of it changed outside a `returned` form, or sent empty, under `beneficial_owners[i].<field>`, and nothing is saved; a value sent for a field whose condition reads a source left empty or wrong comes back as the error of the source, e.g. `beneficial_owners[0].role`), or a message only for a malformed body (`schema_version` missing or longer than 64, `values` not an object) and a path id that is not a uuid; `FORM_FIELD_NOT_ALLOWED` — a key the form does not accept (unknown, locked, hidden, a file field), `details.fields = [key]`, the whole request refused; `FORM_TARGET_UNSUPPORTED` — a card program named on a business entity; `INVALID_REQUEST` — `wallet_id` missing for a form over card programs; `KYC_BASE_BINDING_MISSING` — the tenant has no base form for this client type; `KYC_FORMS_NOT_ENABLED` — the tenant is not on the forms flow */
|
|
21272
21323
|
KycFormsFieldErrors: {
|
|
21273
21324
|
headers: {
|
|
21274
21325
|
[name: string]: unknown;
|
|
@@ -21387,7 +21438,7 @@ export interface components {
|
|
|
21387
21438
|
KycFormsWalletId: string;
|
|
21388
21439
|
/** @description The wallet the rails and the card programs are read for. Optional: without it the first linked wallet (main wallet first) that the entity's owner and the caller are both members of is used; when there is none — no linked wallet, or none the two share — the answer has `wallet_id: null` and empty `rails` and `programs`. With it, the entity's owner must be an active member of the wallet, and so must the caller when it is someone else, else `403 ACCESS_DENIED`. */
|
|
21389
21440
|
KycFormsTargetsWalletId: string;
|
|
21390
|
-
/** @description The `id` of a file in the draft (`saved: false`) */
|
|
21441
|
+
/** @description The `id` of a file in the draft or in the returned submission of the form (`saved: false`) */
|
|
21391
21442
|
KycFormsUploadId: string;
|
|
21392
21443
|
/** @description Language of the texts (labels, hints, options, section titles, general messages); takes precedence over `Accept-Language`. A language outside the tenant's list is served in English. */
|
|
21393
21444
|
KycFormsLocale: string;
|
|
@@ -2409,77 +2409,6 @@ export interface paths {
|
|
|
2409
2409
|
patch?: never;
|
|
2410
2410
|
trace?: never;
|
|
2411
2411
|
};
|
|
2412
|
-
"/orders/WITHDRAW_CARD_PREPAID": {
|
|
2413
|
-
parameters: {
|
|
2414
|
-
query?: never;
|
|
2415
|
-
header?: never;
|
|
2416
|
-
path?: never;
|
|
2417
|
-
cookie?: never;
|
|
2418
|
-
};
|
|
2419
|
-
get?: never;
|
|
2420
|
-
put?: never;
|
|
2421
|
-
/**
|
|
2422
|
-
* Withdraw funds from prepaid card to wallet
|
|
2423
|
-
* @description Withdraw funds from a closed prepaid card back to crypto wallet. Currency is automatically determined from card's fiat_account.
|
|
2424
|
-
*/
|
|
2425
|
-
post: {
|
|
2426
|
-
parameters: {
|
|
2427
|
-
query?: never;
|
|
2428
|
-
header?: never;
|
|
2429
|
-
path?: never;
|
|
2430
|
-
cookie?: never;
|
|
2431
|
-
};
|
|
2432
|
-
requestBody: {
|
|
2433
|
-
content: {
|
|
2434
|
-
"application/json": {
|
|
2435
|
-
/**
|
|
2436
|
-
* @description Amount to withdraw
|
|
2437
|
-
* @example 100
|
|
2438
|
-
*/
|
|
2439
|
-
amount: number;
|
|
2440
|
-
/**
|
|
2441
|
-
* @description Destination wallet UUID
|
|
2442
|
-
* @example 8205c701-cd41-4929-910f-fccbb949729a
|
|
2443
|
-
*/
|
|
2444
|
-
wallet_uuid: string;
|
|
2445
|
-
/**
|
|
2446
|
-
* @description Card ID to withdraw from (must be closed)
|
|
2447
|
-
* @example a60e477a-2ebb-4158-91ee-2f39ade8d883
|
|
2448
|
-
*/
|
|
2449
|
-
card_id: string;
|
|
2450
|
-
};
|
|
2451
|
-
};
|
|
2452
|
-
};
|
|
2453
|
-
responses: {
|
|
2454
|
-
/** @description Order successfully created */
|
|
2455
|
-
200: {
|
|
2456
|
-
headers: {
|
|
2457
|
-
[name: string]: unknown;
|
|
2458
|
-
};
|
|
2459
|
-
content?: never;
|
|
2460
|
-
};
|
|
2461
|
-
/** @description Bad request - validation error or card not closed */
|
|
2462
|
-
400: {
|
|
2463
|
-
headers: {
|
|
2464
|
-
[name: string]: unknown;
|
|
2465
|
-
};
|
|
2466
|
-
content?: never;
|
|
2467
|
-
};
|
|
2468
|
-
/** @description Server error */
|
|
2469
|
-
500: {
|
|
2470
|
-
headers: {
|
|
2471
|
-
[name: string]: unknown;
|
|
2472
|
-
};
|
|
2473
|
-
content?: never;
|
|
2474
|
-
};
|
|
2475
|
-
};
|
|
2476
|
-
};
|
|
2477
|
-
delete?: never;
|
|
2478
|
-
options?: never;
|
|
2479
|
-
head?: never;
|
|
2480
|
-
patch?: never;
|
|
2481
|
-
trace?: never;
|
|
2482
|
-
};
|
|
2483
2412
|
"/v2/orders/order_types": {
|
|
2484
2413
|
parameters: {
|
|
2485
2414
|
query?: never;
|
|
@@ -4431,6 +4431,8 @@ export interface paths {
|
|
|
4431
4431
|
* List countries
|
|
4432
4432
|
* @description Returns all countries with complete data including timezones, translations, coordinates.
|
|
4433
4433
|
*
|
|
4434
|
+
* `iban` says what the country's banks take as the account of an incoming SWIFT payment: `MANDATORY` — only an IBAN (a SWIFT destination to such a bank is refused with `IBAN_REQUIRED` otherwise), `OPTIONAL` — an IBAN or a domestic account number, `NONE` — no IBANs in the country.
|
|
4435
|
+
*
|
|
4434
4436
|
*/
|
|
4435
4437
|
get: {
|
|
4436
4438
|
parameters: {
|
|
@@ -4449,13 +4451,18 @@ export interface paths {
|
|
|
4449
4451
|
};
|
|
4450
4452
|
requestBody?: never;
|
|
4451
4453
|
responses: {
|
|
4452
|
-
/** @description Countries retrieved successfully */
|
|
4454
|
+
/** @description Countries retrieved successfully — every column of the reference row, `iban` included */
|
|
4453
4455
|
200: {
|
|
4454
4456
|
headers: {
|
|
4455
4457
|
[name: string]: unknown;
|
|
4456
4458
|
};
|
|
4457
4459
|
content: {
|
|
4458
|
-
"application/json":
|
|
4460
|
+
"application/json": {
|
|
4461
|
+
/** @example true */
|
|
4462
|
+
success: boolean;
|
|
4463
|
+
data: components["schemas"]["ReferenceCountry"][];
|
|
4464
|
+
pagination?: components["schemas"]["PaginationResponse"];
|
|
4465
|
+
};
|
|
4459
4466
|
};
|
|
4460
4467
|
};
|
|
4461
4468
|
/** @description Internal server error */
|
|
@@ -8854,7 +8861,7 @@ export interface components {
|
|
|
8854
8861
|
/** @example iban */
|
|
8855
8862
|
field: string;
|
|
8856
8863
|
/**
|
|
8857
|
-
* @description Machine-readable reason. Bank details: `REQUIRED`, `IBAN_WRONG_FORMAT`, `IBAN_INVALID_CHARACTERS`, `IBAN_COUNTRY_NOT_SUPPORTED`, `IBAN_WRONG_LENGTH`, `IBAN_WRONG_BBAN_FORMAT`, `IBAN_WRONG_CHECKSUM`, `IBAN_WRONG_NATIONAL_CHECKSUM`, `IBAN_QR_NOT_ALLOWED`, `IBAN_NOT_SEPA`, `IBAN_BIC_COUNTRY_MISMATCH`, `BIC_WRONG_FORMAT`, `BIC_UNKNOWN_COUNTRY`, `BIC_TEST_CODE`, `ROUTING_NUMBER_INVALID`, `ACCOUNT_NUMBER_INVALID`, `SORT_CODE_INVALID`, `WRONG_IDENTIFIER_TYPE`, `INVALID_VALUE`; reference data: `BANK_COUNTRY_MISMATCH`, `VALIDATION_ERROR`; dry run only: `INVALID_TYPE`. New codes may be added — show `message` for an unknown one.
|
|
8864
|
+
* @description Machine-readable reason. Bank details: `REQUIRED`, `IBAN_WRONG_FORMAT`, `IBAN_INVALID_CHARACTERS`, `IBAN_COUNTRY_NOT_SUPPORTED`, `IBAN_WRONG_LENGTH`, `IBAN_WRONG_BBAN_FORMAT`, `IBAN_WRONG_CHECKSUM`, `IBAN_WRONG_NATIONAL_CHECKSUM`, `IBAN_QR_NOT_ALLOWED`, `IBAN_NOT_SEPA`, `IBAN_REQUIRED`, `IBAN_BIC_COUNTRY_MISMATCH`, `BIC_WRONG_FORMAT`, `BIC_UNKNOWN_COUNTRY`, `BIC_TEST_CODE`, `ROUTING_NUMBER_INVALID`, `ACCOUNT_NUMBER_INVALID`, `SORT_CODE_INVALID`, `WRONG_IDENTIFIER_TYPE`, `INVALID_VALUE`; reference data: `BANK_COUNTRY_MISMATCH`, `VALIDATION_ERROR`; dry run only: `INVALID_TYPE`. New codes may be added — show `message` for an unknown one.
|
|
8858
8865
|
* @example IBAN_NOT_SEPA
|
|
8859
8866
|
*/
|
|
8860
8867
|
code: string;
|
|
@@ -8871,6 +8878,34 @@ export interface components {
|
|
|
8871
8878
|
*/
|
|
8872
8879
|
detected?: "IBAN" | "BIC" | "ROUTING_NUMBER";
|
|
8873
8880
|
};
|
|
8881
|
+
/** @description A country of the reference. `id` is the `country_id` of addresses (bank and beneficiary address of a destination). `iban` says what banks of the country take as the account of an incoming SWIFT payment: `MANDATORY` — only an IBAN, a SWIFT destination to such a bank is refused with `IBAN_REQUIRED` for anything else; `OPTIONAL` — the country issues IBANs, its banks also take a domestic account number; `NONE` — the country issues no IBANs. */
|
|
8882
|
+
ReferenceCountry: {
|
|
8883
|
+
/** @example 231 */
|
|
8884
|
+
id: number;
|
|
8885
|
+
/** @example United Arab Emirates */
|
|
8886
|
+
name: string;
|
|
8887
|
+
/** @example AE */
|
|
8888
|
+
iso2: string;
|
|
8889
|
+
/** @example ARE */
|
|
8890
|
+
iso3?: string | null;
|
|
8891
|
+
/** @example 971 */
|
|
8892
|
+
phonecode?: string | null;
|
|
8893
|
+
/** @example AED */
|
|
8894
|
+
currency?: string | null;
|
|
8895
|
+
currency_name?: string | null;
|
|
8896
|
+
currency_symbol?: string | null;
|
|
8897
|
+
/** @example Asia */
|
|
8898
|
+
region?: string | null;
|
|
8899
|
+
/** @example Western Asia */
|
|
8900
|
+
subregion?: string | null;
|
|
8901
|
+
emoji?: string | null;
|
|
8902
|
+
nationality?: string | null;
|
|
8903
|
+
/**
|
|
8904
|
+
* @example MANDATORY
|
|
8905
|
+
* @enum {string}
|
|
8906
|
+
*/
|
|
8907
|
+
iban: "MANDATORY" | "OPTIONAL" | "NONE";
|
|
8908
|
+
};
|
|
8874
8909
|
DestinationValidationResult: {
|
|
8875
8910
|
/** @description True when creating the destination with this payload would pass every check */
|
|
8876
8911
|
valid: boolean;
|
|
@@ -1032,6 +1032,17 @@ export declare namespace API {
|
|
|
1032
1032
|
}
|
|
1033
1033
|
export {};
|
|
1034
1034
|
}
|
|
1035
|
+
namespace Countries {
|
|
1036
|
+
type CountriesRoot = pathsV1Frontend['/frontend/reference/countries'];
|
|
1037
|
+
export type Country = componentsV1Frontend['schemas']['ReferenceCountry'];
|
|
1038
|
+
/** What the country's banks take as the account of an incoming SWIFT payment. */
|
|
1039
|
+
export type IbanRequirement = Country['iban'];
|
|
1040
|
+
export namespace List {
|
|
1041
|
+
type Request = NonNullable<CountriesRoot['get']['parameters']['query']>;
|
|
1042
|
+
type Response = CountriesRoot['get']['responses'][200]['content']['application/json'];
|
|
1043
|
+
}
|
|
1044
|
+
export {};
|
|
1045
|
+
}
|
|
1035
1046
|
namespace OrderTypes {
|
|
1036
1047
|
type OrderTypesRoot = pathsV1Frontend['/frontend/reference/order_types'];
|
|
1037
1048
|
export type OrderType = componentsV1Frontend['schemas']['ReferenceOrderType'];
|
|
@@ -3265,6 +3276,8 @@ export declare namespace API {
|
|
|
3265
3276
|
interface OrderType {
|
|
3266
3277
|
order_type_id: string;
|
|
3267
3278
|
}
|
|
3279
|
+
type EmbeddedProgram = NonNullable<componentsV1Frontend['schemas']['VirtualAccount']['virtual_accounts_program']>;
|
|
3280
|
+
type EmbeddedDetailProgram = NonNullable<componentsV1Frontend['schemas']['VirtualAccountDetail']['virtual_accounts_program']>;
|
|
3268
3281
|
interface VirtualAccountListItem {
|
|
3269
3282
|
id: string;
|
|
3270
3283
|
created_at: string;
|
|
@@ -3278,7 +3291,7 @@ export declare namespace API {
|
|
|
3278
3291
|
destination_address: string;
|
|
3279
3292
|
integration_vendor_id: string;
|
|
3280
3293
|
vendor_account_id: string;
|
|
3281
|
-
virtual_accounts_program: API.VirtualAccounts.
|
|
3294
|
+
virtual_accounts_program: API.VirtualAccounts.VirtualAccount.EmbeddedProgram;
|
|
3282
3295
|
deposit_instructions?: API.VirtualAccounts.VirtualAccount.DepositInstruction.DepositInstruction[];
|
|
3283
3296
|
}
|
|
3284
3297
|
interface VirtualAccountDetailItem {
|
|
@@ -3300,7 +3313,7 @@ export declare namespace API {
|
|
|
3300
3313
|
total_balance: number;
|
|
3301
3314
|
va_programs_id: string;
|
|
3302
3315
|
vendor_account_id: string;
|
|
3303
|
-
virtual_accounts_program: API.VirtualAccounts.
|
|
3316
|
+
virtual_accounts_program: API.VirtualAccounts.VirtualAccount.EmbeddedDetailProgram;
|
|
3304
3317
|
wallet_id: string;
|
|
3305
3318
|
}
|
|
3306
3319
|
}
|