squarefi-bff-api-module 1.36.60 → 1.36.61
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/README.md +1 -1
- package/dist/api/kyc.d.ts +8 -1
- package/dist/api/kyc.js +8 -1
- package/dist/api/types/autogen/apiV1External.types.d.ts +40 -11
- package/dist/api/types/autogen/apiV1Frontend.types.d.ts +76 -27
- package/dist/api/types/autogen/apiV1Legacy.types.d.ts +15 -2
- package/dist/api/types/autogen/apiV1Tenant.types.d.ts +33 -7
- package/dist/api/types/autogen/apiV2.types.d.ts +15 -0
- package/dist/api/types/types.d.ts +19 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -210,7 +210,7 @@ const publicUrl = getPublicUrl(path);
|
|
|
210
210
|
| **developer** | Vendor & API key management |
|
|
211
211
|
| **exchange** | Exchange rates per order type / currency |
|
|
212
212
|
| **issuing** | Virtual & physical cards, limits, controls, transactions |
|
|
213
|
-
| **kyc** |
|
|
213
|
+
| **kyc** | KYC entities & data collection, Sumsub flows, rails & forms |
|
|
214
214
|
| **list** | Static system lists – currencies, chains, countries |
|
|
215
215
|
| **orders** | Create / calculate orders (including internal transfer) |
|
|
216
216
|
| **tenants** | Tenant configuration |
|
package/dist/api/kyc.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { API } from './types/types';
|
|
2
2
|
export declare const kyc: {
|
|
3
3
|
dataCollection: {
|
|
4
|
-
|
|
4
|
+
/** @deprecated KYC is keyed by the KYC entity now, not the wallet (SFI-1924). Use `kyc.entity.init`. */
|
|
5
|
+
init: ({ wallet_id, type }: API.KYC.DataCollection.Init.Request) => Promise<API.KYC.DataCollection.Init.Response>;
|
|
6
|
+
/** @deprecated KYC is keyed by the KYC entity now, not the wallet (SFI-1924). Use `kyc.entity.resume`. */
|
|
5
7
|
resume: ({ wallet_id, verification_ref, }: API.KYC.DataCollection.Resume.Request) => Promise<API.KYC.DataCollection.Resume.Response>;
|
|
6
8
|
};
|
|
7
9
|
sumsub: {
|
|
@@ -9,6 +11,11 @@ export declare const kyc: {
|
|
|
9
11
|
};
|
|
10
12
|
entity: {
|
|
11
13
|
get: ({ wallet_id }: API.KYC.Entity.Get.Request) => Promise<API.KYC.Entity.Get.Response>;
|
|
14
|
+
create: (data: API.KYC.Entity.Create.Request) => Promise<API.KYC.Entity.Create.Response>;
|
|
15
|
+
getAll: () => Promise<API.KYC.Entity.List.Response>;
|
|
16
|
+
getById: ({ kyc_entity_id }: API.KYC.Entity.GetById.Request) => Promise<API.KYC.Entity.GetById.Response>;
|
|
17
|
+
init: ({ kyc_entity_id, ...params }: API.KYC.Entity.Init.Request) => Promise<API.KYC.Entity.Init.Response>;
|
|
18
|
+
resume: ({ kyc_entity_id, verification_ref, }: API.KYC.Entity.Resume.Request) => Promise<API.KYC.Entity.Resume.Response>;
|
|
12
19
|
};
|
|
13
20
|
rails: {
|
|
14
21
|
info: {
|
package/dist/api/kyc.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { apiClientV1, apiClientV2 } from '../utils/apiClientFactory';
|
|
2
2
|
export const kyc = {
|
|
3
3
|
dataCollection: {
|
|
4
|
-
|
|
4
|
+
/** @deprecated KYC is keyed by the KYC entity now, not the wallet (SFI-1924). Use `kyc.entity.init`. */
|
|
5
|
+
init: ({ wallet_id, type }) => apiClientV2.postRequest(`/kyc/init/${wallet_id}/${type}`),
|
|
6
|
+
/** @deprecated KYC is keyed by the KYC entity now, not the wallet (SFI-1924). Use `kyc.entity.resume`. */
|
|
5
7
|
resume: ({ wallet_id, verification_ref, }) => apiClientV2.postRequest(`/kyc/resume/${wallet_id}/${verification_ref}`),
|
|
6
8
|
},
|
|
7
9
|
sumsub: {
|
|
@@ -9,6 +11,11 @@ export const kyc = {
|
|
|
9
11
|
},
|
|
10
12
|
entity: {
|
|
11
13
|
get: ({ wallet_id }) => apiClientV2.getRequest(`/kyc/${wallet_id}/entity`),
|
|
14
|
+
create: (data) => apiClientV2.postRequest('/kyc/entities', { data }),
|
|
15
|
+
getAll: () => apiClientV2.getRequest('/kyc/entities'),
|
|
16
|
+
getById: ({ kyc_entity_id }) => apiClientV2.getRequest(`/kyc/entities/${kyc_entity_id}`),
|
|
17
|
+
init: ({ kyc_entity_id, ...params }) => apiClientV2.postRequest(`/kyc/entities/${kyc_entity_id}/init`, { params }),
|
|
18
|
+
resume: ({ kyc_entity_id, verification_ref, }) => apiClientV2.postRequest(`/kyc/entities/${kyc_entity_id}/resume/${verification_ref}`),
|
|
12
19
|
},
|
|
13
20
|
rails: {
|
|
14
21
|
info: {
|
|
@@ -1109,7 +1109,7 @@ export interface paths {
|
|
|
1109
1109
|
put?: never;
|
|
1110
1110
|
/**
|
|
1111
1111
|
* Create crypto wallet
|
|
1112
|
-
* @description Creates a new crypto wallet
|
|
1112
|
+
* @description Creates a new crypto wallet.
|
|
1113
1113
|
* Optionally specify chains to create addresses immediately.
|
|
1114
1114
|
*
|
|
1115
1115
|
*/
|
|
@@ -1292,7 +1292,7 @@ export interface paths {
|
|
|
1292
1292
|
post?: never;
|
|
1293
1293
|
/**
|
|
1294
1294
|
* Delete crypto wallet
|
|
1295
|
-
* @description Soft-deletes a crypto wallet and archives it
|
|
1295
|
+
* @description Soft-deletes a crypto wallet and archives it with the custody provider.
|
|
1296
1296
|
* The wallet is marked as deleted and all addresses are deactivated.
|
|
1297
1297
|
*
|
|
1298
1298
|
*/
|
|
@@ -1919,7 +1919,7 @@ export interface paths {
|
|
|
1919
1919
|
*/
|
|
1920
1920
|
gov_id_expiration_date?: string;
|
|
1921
1921
|
/**
|
|
1922
|
-
* @description Tax identifier of the cardholder, separate from the document number. Required by
|
|
1922
|
+
* @description Tax identifier of the cardholder, separate from the document number. Required by some CONSUMER programs when nationality is USA, where it must be a valid SSN (9 digits or XXX-XX-XXXX).
|
|
1923
1923
|
*
|
|
1924
1924
|
* @example 123-45-6789
|
|
1925
1925
|
*/
|
|
@@ -2227,7 +2227,7 @@ export interface paths {
|
|
|
2227
2227
|
gov_id_issuance_date?: string;
|
|
2228
2228
|
/** Format: date */
|
|
2229
2229
|
gov_id_expiration_date?: string;
|
|
2230
|
-
/** @description Tax identifier (USA +
|
|
2230
|
+
/** @description Tax identifier (USA + CONSUMER programs that require it: SSN, 9 digits or XXX-XX-XXXX) */
|
|
2231
2231
|
tax_identification_number?: string;
|
|
2232
2232
|
address?: {
|
|
2233
2233
|
line1?: string;
|
|
@@ -4859,7 +4859,13 @@ export interface paths {
|
|
|
4859
4859
|
limit?: number;
|
|
4860
4860
|
sort_by?: string;
|
|
4861
4861
|
sort_order?: "asc" | "desc";
|
|
4862
|
-
/** @description JSON-encoded array of filters, e.g. `[{"status":"COMPLETE"}]`.
|
|
4862
|
+
/** @description JSON-encoded array of filters, e.g. `[{"status":"COMPLETE"}]`. A value may be an
|
|
4863
|
+
* array to match any of several values: `[{"status":["NEW","PROCESSING"]}]`.
|
|
4864
|
+
* Filter by order type with `[{"order_type":"TRANSFER_INTERNAL"}]` — the names are
|
|
4865
|
+
* the ones `GET /api/reference/order_types` returns.
|
|
4866
|
+
* To find an order by the `reference` sent at creation, filter on that meta field:
|
|
4867
|
+
* `[{"meta->>reference":"invoice-2026-04-001"}]` — this is how an order is recovered
|
|
4868
|
+
* when the create response was lost.
|
|
4863
4869
|
* Besides order columns it accepts `mass_payout_id` (uuid), which narrows the
|
|
4864
4870
|
* result to the orders of one mass payout batch — the same batch reported by
|
|
4865
4871
|
* the `mass_payout_id` field of each order. A non-uuid value is rejected with 400.
|
|
@@ -5184,6 +5190,16 @@ export interface paths {
|
|
|
5184
5190
|
* @default false
|
|
5185
5191
|
*/
|
|
5186
5192
|
is_reverse?: boolean;
|
|
5193
|
+
/**
|
|
5194
|
+
* @description Optional. Free-form reference visible in order/transaction listings. Kept on the order, so it is also how you find the transfer again if the create response was lost: `GET /api/orders/list?filters=[{"meta->>reference":"<your reference>"}]`.
|
|
5195
|
+
* @example invoice-2026-04-001
|
|
5196
|
+
*/
|
|
5197
|
+
reference?: string;
|
|
5198
|
+
/**
|
|
5199
|
+
* @description Optional. Internal note attached to the order.
|
|
5200
|
+
* @example Fee collected for order 550e8400-e29b-41d4-a716-446655440000
|
|
5201
|
+
*/
|
|
5202
|
+
note?: string;
|
|
5187
5203
|
/**
|
|
5188
5204
|
* Format: date-time
|
|
5189
5205
|
* @description Optional. Schedule the transfer for a future time (min 1 hour, max 90 days ahead). No funds are reserved; after approval the order waits in EXPECTED status and executes automatically.
|
|
@@ -5280,6 +5296,19 @@ export interface paths {
|
|
|
5280
5296
|
* - Sufficient balance in `from_currency_id` at approve time on the wallet
|
|
5281
5297
|
* bound to the API key.
|
|
5282
5298
|
*
|
|
5299
|
+
* **Cross-currency send (optional).** Pass a `to_currency_id` different
|
|
5300
|
+
* from `from_currency_id` to convert on the way out, exactly like the fiat
|
|
5301
|
+
* offramps: the wallet is debited `amount` in `from_currency_id`, and the
|
|
5302
|
+
* destination receives `amount_to` (also `meta.transaction_amount`) in
|
|
5303
|
+
* `to_currency_id` at the tenant's exchange rate for this order type.
|
|
5304
|
+
* Requirements: the pair must be configured for the tenant
|
|
5305
|
+
* (`400 EXCHANGE_RATE_NOT_FOUND`), `to_currency_id` must be an on-chain
|
|
5306
|
+
* currency (`400 INVALID_REQUEST`), and the destination address must be
|
|
5307
|
+
* registered on the network of `to_currency_id`
|
|
5308
|
+
* (`400 DESTINATION_CHAIN_MISMATCH`). Preview with `POST /api/orders/calc`.
|
|
5309
|
+
* Without `to_currency_id` (or with the same value) nothing changes: one
|
|
5310
|
+
* currency, one chain.
|
|
5311
|
+
*
|
|
5283
5312
|
* `wallet_id` is automatically resolved from the API key — do **not** pass it
|
|
5284
5313
|
* in the body.
|
|
5285
5314
|
*
|
|
@@ -7111,7 +7140,7 @@ export interface components {
|
|
|
7111
7140
|
* @example EXCHANGE_OMNI
|
|
7112
7141
|
* @enum {string}
|
|
7113
7142
|
*/
|
|
7114
|
-
OrderTypeId: "EXCHANGE_OMNI" | "EXCHANGE_OMNI_ONRAMP" | "EXCHANGE_OMNI_OFFRAMP" | "EXCHANGE_OMNI_CRYPTO" | "EXCHANGE_CRYPTO_INTERNAL" | "L2F_ACH_ONRAMP" | "L2F_ACH_OFFRAMP" | "L2F_SEPA_ONRAMP" | "L2F_SEPA_OFFRAMP" | "L2F_SWIFT_ONRAMP" | "L2F_SWIFT_OFFRAMP" | "L2F_WIRE_ONRAMP" | "L2F_WIRE_OFFRAMP" | "L2F_CHAPS_ONRAMP" | "L2F_CHAPS_OFFRAMP" | "L2F_FPS_ONRAMP" | "L2F_FPS_OFFRAMP" | "BRL_WIRE_ONRAMP" | "BRL_WIRE_OFFRAMP" | "BRL_ACH_ONRAMP" | "BRL_ACH_OFFRAMP" | "BRL_RTP_OFFRAMP" | "DLS_WIRE_ONRAMP" | "DLS_WIRE_OFFRAMP" | "DLS_ACH_ONRAMP" | "DLS_ACH_OFFRAMP" | "DLS_SEPA_ONRAMP" | "DLS_SEPA_OFFRAMP" | "DLS_SWIFT_ONRAMP" | "DLS_SWIFT_OFFRAMP" | "BC1_SEPA_ONRAMP" | "BC1_SEPA_OFFRAMP" | "BC1_SWIFT_ONRAMP" | "BC1_SWIFT_OFFRAMP" | "BC3_SEPA_ONRAMP" | "BC3_SEPA_OFFRAMP" | "RPP_SWIFT_OFFRAMP" | "RPP_SEPA_OFFRAMP" | "RPP_FPS_OFFRAMP" | "RPP_ACH_OFFRAMP" | "OMNIBUS_CRYPTO_TRANSFER" | "OMNIBUS_CRYPTO_WITHDRAWAL" | "OMNIBUS_INTERNAL_TRANSFER" | "SEGREGATED_CRYPTO_TRANSFER" | "TRANSFER_INTERNAL" | "TRANSFER_CARD_PREPAID" | "TRANSFER_CARD_SUBACCOUNT" | "TRANSFER_CARD_WHOLESALE" | "WITHDRAW_CARD_PREPAID" | "WITHDRAW_CARD_SUBACCOUNT" | "REFUND_CARD_PREPAID" | "REFUND_CARD_SUBACCOUNT" | "RN_CARDS_OFFRAMP" | "CARD_ISSUING_FEE";
|
|
7143
|
+
OrderTypeId: "EXCHANGE_OMNI" | "EXCHANGE_OMNI_ONRAMP" | "EXCHANGE_OMNI_OFFRAMP" | "EXCHANGE_OMNI_CRYPTO" | "EXCHANGE_CRYPTO_INTERNAL" | "L2F_ACH_ONRAMP" | "L2F_ACH_OFFRAMP" | "L2F_SEPA_ONRAMP" | "L2F_SEPA_OFFRAMP" | "L2F_SWIFT_ONRAMP" | "L2F_SWIFT_OFFRAMP" | "L2F_WIRE_ONRAMP" | "L2F_WIRE_OFFRAMP" | "L2F_CHAPS_ONRAMP" | "L2F_CHAPS_OFFRAMP" | "L2F_FPS_ONRAMP" | "L2F_FPS_OFFRAMP" | "BRL_WIRE_ONRAMP" | "BRL_WIRE_OFFRAMP" | "BRL_ACH_ONRAMP" | "BRL_ACH_OFFRAMP" | "BRL_RTP_OFFRAMP" | "DLS_WIRE_ONRAMP" | "DLS_WIRE_OFFRAMP" | "DLS_ACH_ONRAMP" | "DLS_ACH_OFFRAMP" | "DLS_SEPA_ONRAMP" | "DLS_SEPA_OFFRAMP" | "DLS_SWIFT_ONRAMP" | "DLS_SWIFT_OFFRAMP" | "BC1_SEPA_ONRAMP" | "BC1_SEPA_OFFRAMP" | "BC1_SWIFT_ONRAMP" | "BC1_SWIFT_OFFRAMP" | "BC3_SEPA_ONRAMP" | "BC3_SEPA_OFFRAMP" | "RPP_SWIFT_OFFRAMP" | "RPP_SEPA_OFFRAMP" | "RPP_FPS_OFFRAMP" | "RPP_ACH_OFFRAMP" | "OMNIBUS_CRYPTO_TRANSFER" | "OMNIBUS_CRYPTO_WITHDRAWAL" | "OMNIBUS_INTERNAL_TRANSFER" | "SEGREGATED_CRYPTO_TRANSFER" | "TRANSFER_INTERNAL" | "TRANSFER_CARD_PREPAID" | "TRANSFER_CARD_SUBACCOUNT" | "TRANSFER_CARD_WHOLESALE" | "WITHDRAW_CARD_PREPAID" | "WITHDRAW_CARD_SUBACCOUNT" | "REFUND_CARD_PREPAID" | "REFUND_CARD_SUBACCOUNT" | "RN_CARDS_OFFRAMP" | "CARD_ISSUING_FEE" | "MONTHLY_FEE";
|
|
7115
7144
|
/** @description Card object with all properties */
|
|
7116
7145
|
IssuingCard: {
|
|
7117
7146
|
/**
|
|
@@ -7267,7 +7296,7 @@ export interface components {
|
|
|
7267
7296
|
*/
|
|
7268
7297
|
cvv: string;
|
|
7269
7298
|
/**
|
|
7270
|
-
* @description 3-D Secure password where the
|
|
7299
|
+
* @description 3-D Secure password where the card program exposes one; `null` otherwise.
|
|
7271
7300
|
* @example null
|
|
7272
7301
|
*/
|
|
7273
7302
|
security_code: string | null;
|
|
@@ -7575,7 +7604,7 @@ export interface components {
|
|
|
7575
7604
|
*/
|
|
7576
7605
|
level?: "minimal" | "basic" | "declared" | "full";
|
|
7577
7606
|
/**
|
|
7578
|
-
* @description Required field names; address fields are dotted (address.line1).
|
|
7607
|
+
* @description Required field names; address fields are dotted (address.line1). Some CONSUMER programs also list gov_id_issuance_date and gov_id_expiration_date (ISO YYYY-MM-DD).
|
|
7579
7608
|
* @example [
|
|
7580
7609
|
* "first_name",
|
|
7581
7610
|
* "last_name",
|
|
@@ -7588,7 +7617,7 @@ export interface components {
|
|
|
7588
7617
|
required?: string[];
|
|
7589
7618
|
/** @description Documents that must be attached; empty below the full level */
|
|
7590
7619
|
required_documents?: ("gov_id_front" | "gov_id_back" | "selfie")[];
|
|
7591
|
-
/** @description Human-readable constraints the field list cannot express.
|
|
7620
|
+
/** @description Human-readable constraints the field list cannot express — e.g. a CONSUMER program requiring tax_identification_number to be a valid SSN when nationality is USA. */
|
|
7592
7621
|
notes?: string[];
|
|
7593
7622
|
/** @description What each country changes, keyed by ISO 3166-1 alpha-3 with a `default` entry; empty when the vendor reviews nothing. These fields stay out of `required` because they only hold once the nationality or address country is known: read the rule for the nationality the user picked (required_by_nationality), the rule for the address country (required_by_address), and the rule for the country that issued the document (gov_id_types). */
|
|
7594
7623
|
country_rules?: {
|
|
@@ -8206,13 +8235,13 @@ export interface components {
|
|
|
8206
8235
|
from_currency_id: string;
|
|
8207
8236
|
/**
|
|
8208
8237
|
* Format: uuid
|
|
8209
|
-
* @description Optional. UUID of the destination
|
|
8238
|
+
* @description Optional. UUID of the currency delivered on-chain to the destination. Omitted or equal to `from_currency_id`: a plain transfer of the same asset (unchanged behaviour). Different: a **cross-currency send** — the wallet is debited `amount` in `from_currency_id`, and the omnibus pays out `amount_to` (`meta.transaction_amount`) in `to_currency_id` at the tenant's exchange rate for `OMNIBUS_CRYPTO_TRANSFER`, the same way the fiat offramps convert. The pair must be configured for the tenant (`400 EXCHANGE_RATE_NOT_FOUND` otherwise), the currency must be on-chain (`400 INVALID_REQUEST`), and the counterparty destination must be registered on the same network as `to_currency_id` (`400 DESTINATION_CHAIN_MISMATCH`). Preview the rate and the delivered amount with `POST /api/orders/calc` using the same `from_currency_id` / `to_currency_id`.
|
|
8210
8239
|
* @example 509eca03-bc0d-4a38-b7dc-d136d2bdaa43
|
|
8211
8240
|
*/
|
|
8212
8241
|
to_currency_id?: string;
|
|
8213
8242
|
/**
|
|
8214
8243
|
* Format: uuid
|
|
8215
|
-
* @description UUID of a `CRYPTO_EXTERNAL` counterparty destination previously created via `POST /api/counterparty/destinations`.
|
|
8244
|
+
* @description UUID of a `CRYPTO_EXTERNAL` counterparty destination previously created via `POST /api/counterparty/destinations`. For a cross-currency send its address must sit on the network of `to_currency_id`.
|
|
8216
8245
|
* @example b2f3d8c1-4a7e-4d22-9c5f-1e6a8d0b2a44
|
|
8217
8246
|
*/
|
|
8218
8247
|
counterparty_destination_id: string;
|
|
@@ -1154,7 +1154,9 @@ export interface paths {
|
|
|
1154
1154
|
"application/json": components["schemas"]["ErrorResponse"];
|
|
1155
1155
|
};
|
|
1156
1156
|
};
|
|
1157
|
-
/** @description Access denied
|
|
1157
|
+
/** @description Access denied, or (Clerk tenants) the second-factor verification is
|
|
1158
|
+
* stale — `TWO_FACTOR_REVERIFICATION_REQUIRED`: re-verify and retry.
|
|
1159
|
+
* */
|
|
1158
1160
|
403: {
|
|
1159
1161
|
headers: {
|
|
1160
1162
|
[name: string]: unknown;
|
|
@@ -1255,7 +1257,9 @@ export interface paths {
|
|
|
1255
1257
|
};
|
|
1256
1258
|
};
|
|
1257
1259
|
};
|
|
1258
|
-
/** @description Access denied
|
|
1260
|
+
/** @description Access denied, or (Clerk tenants) the second-factor verification is
|
|
1261
|
+
* stale — `TWO_FACTOR_REVERIFICATION_REQUIRED`: re-verify and retry.
|
|
1262
|
+
* */
|
|
1259
1263
|
403: {
|
|
1260
1264
|
headers: {
|
|
1261
1265
|
[name: string]: unknown;
|
|
@@ -1311,7 +1315,9 @@ export interface paths {
|
|
|
1311
1315
|
};
|
|
1312
1316
|
};
|
|
1313
1317
|
};
|
|
1314
|
-
/** @description Access denied
|
|
1318
|
+
/** @description Access denied, or (Clerk tenants) the second-factor verification is
|
|
1319
|
+
* stale — `TWO_FACTOR_REVERIFICATION_REQUIRED`: re-verify and retry.
|
|
1320
|
+
* */
|
|
1315
1321
|
403: {
|
|
1316
1322
|
headers: {
|
|
1317
1323
|
[name: string]: unknown;
|
|
@@ -1477,7 +1483,9 @@ export interface paths {
|
|
|
1477
1483
|
};
|
|
1478
1484
|
};
|
|
1479
1485
|
};
|
|
1480
|
-
/** @description Access denied
|
|
1486
|
+
/** @description Access denied, or (Clerk tenants) the second-factor verification is
|
|
1487
|
+
* stale — `TWO_FACTOR_REVERIFICATION_REQUIRED`: re-verify and retry.
|
|
1488
|
+
* */
|
|
1481
1489
|
403: {
|
|
1482
1490
|
headers: {
|
|
1483
1491
|
[name: string]: unknown;
|
|
@@ -1532,7 +1540,9 @@ export interface paths {
|
|
|
1532
1540
|
};
|
|
1533
1541
|
};
|
|
1534
1542
|
};
|
|
1535
|
-
/** @description Access denied
|
|
1543
|
+
/** @description Access denied, or (Clerk tenants) the second-factor verification is
|
|
1544
|
+
* stale — `TWO_FACTOR_REVERIFICATION_REQUIRED`: re-verify and retry.
|
|
1545
|
+
* */
|
|
1536
1546
|
403: {
|
|
1537
1547
|
headers: {
|
|
1538
1548
|
[name: string]: unknown;
|
|
@@ -1703,7 +1713,9 @@ export interface paths {
|
|
|
1703
1713
|
"application/json": components["schemas"]["ErrorResponse"];
|
|
1704
1714
|
};
|
|
1705
1715
|
};
|
|
1706
|
-
/** @description Access denied
|
|
1716
|
+
/** @description Access denied, or (Clerk tenants) the second-factor verification is
|
|
1717
|
+
* stale — `TWO_FACTOR_REVERIFICATION_REQUIRED`: re-verify and retry.
|
|
1718
|
+
* */
|
|
1707
1719
|
403: {
|
|
1708
1720
|
headers: {
|
|
1709
1721
|
[name: string]: unknown;
|
|
@@ -1782,7 +1794,7 @@ export interface paths {
|
|
|
1782
1794
|
put?: never;
|
|
1783
1795
|
/**
|
|
1784
1796
|
* Create crypto wallet
|
|
1785
|
-
* @description Creates a new crypto wallet
|
|
1797
|
+
* @description Creates a new crypto wallet for the platform wallet.
|
|
1786
1798
|
* Optionally specify chains to create addresses immediately.
|
|
1787
1799
|
*
|
|
1788
1800
|
*/
|
|
@@ -1949,7 +1961,7 @@ export interface paths {
|
|
|
1949
1961
|
post?: never;
|
|
1950
1962
|
/**
|
|
1951
1963
|
* Delete crypto wallet
|
|
1952
|
-
* @description Soft-deletes a crypto wallet and archives it
|
|
1964
|
+
* @description Soft-deletes a crypto wallet and archives it with the custody provider.
|
|
1953
1965
|
* The wallet is marked as deleted and all addresses are deactivated.
|
|
1954
1966
|
*
|
|
1955
1967
|
*/
|
|
@@ -5037,7 +5049,7 @@ export interface paths {
|
|
|
5037
5049
|
*/
|
|
5038
5050
|
gov_id_expiration_date?: string;
|
|
5039
5051
|
/**
|
|
5040
|
-
* @description Tax identifier of the cardholder, separate from the document number. Required by
|
|
5052
|
+
* @description Tax identifier of the cardholder, separate from the document number. Required by some CONSUMER programs when nationality is USA, where it must be a valid SSN (9 digits or XXX-XX-XXXX).
|
|
5041
5053
|
*
|
|
5042
5054
|
* @example 123-45-6789
|
|
5043
5055
|
*/
|
|
@@ -5337,7 +5349,7 @@ export interface paths {
|
|
|
5337
5349
|
gov_id_issuance_date?: string;
|
|
5338
5350
|
/** Format: date */
|
|
5339
5351
|
gov_id_expiration_date?: string;
|
|
5340
|
-
/** @description Tax identifier (USA +
|
|
5352
|
+
/** @description Tax identifier (USA + CONSUMER programs that require it: SSN, 9 digits or XXX-XX-XXXX) */
|
|
5341
5353
|
tax_identification_number?: string;
|
|
5342
5354
|
address?: {
|
|
5343
5355
|
line1?: string;
|
|
@@ -8186,6 +8198,17 @@ export interface paths {
|
|
|
8186
8198
|
* `GET /frontend/counterparty/destinations/{id}/internal-transfer` to
|
|
8187
8199
|
* offer that option when the destination supports it.
|
|
8188
8200
|
*
|
|
8201
|
+
* **Cross-currency send (optional).** A `to_currency_id` different from
|
|
8202
|
+
* `from_currency_id` converts on the way out, like the fiat offramps: the
|
|
8203
|
+
* wallet is debited in `from_currency_id`, the destination receives
|
|
8204
|
+
* `amount_to` in `to_currency_id` at the tenant's exchange rate for this
|
|
8205
|
+
* order type. The pair must be configured (`400 EXCHANGE_RATE_NOT_FOUND`),
|
|
8206
|
+
* `to_currency_id` must be on-chain (`400 INVALID_REQUEST`) and the
|
|
8207
|
+
* destination must be registered on the network of `to_currency_id`
|
|
8208
|
+
* (`400 DESTINATION_CHAIN_MISMATCH`). Preview with
|
|
8209
|
+
* `POST /frontend/orders/calc`. Omitted or equal `to_currency_id` is the
|
|
8210
|
+
* plain same-asset transfer.
|
|
8211
|
+
*
|
|
8189
8212
|
*/
|
|
8190
8213
|
post: {
|
|
8191
8214
|
parameters: {
|
|
@@ -9509,6 +9532,14 @@ export interface paths {
|
|
|
9509
9532
|
* carry `request_id` (idempotency key); `scheduled_at` is ignored.
|
|
9510
9533
|
* Prefer `POST /frontend/orders/withdrawal/crypto`.
|
|
9511
9534
|
*
|
|
9535
|
+
* A `to_currency_id` different from `from_currency_id` is a cross-currency
|
|
9536
|
+
* send under the same rules as the preferred endpoint (`400
|
|
9537
|
+
* EXCHANGE_RATE_NOT_FOUND` / `INVALID_REQUEST` / `DESTINATION_CHAIN_MISMATCH`).
|
|
9538
|
+
* This alias still downgrades a send to an address of a wallet on this
|
|
9539
|
+
* platform to an off-chain internal transfer, which moves one currency
|
|
9540
|
+
* only — such a request with a different `to_currency_id` is refused with
|
|
9541
|
+
* `400 INVALID_REQUEST` instead of silently delivering `from_currency_id`.
|
|
9542
|
+
*
|
|
9512
9543
|
*/
|
|
9513
9544
|
post: {
|
|
9514
9545
|
parameters: {
|
|
@@ -10564,8 +10595,8 @@ export interface paths {
|
|
|
10564
10595
|
put?: never;
|
|
10565
10596
|
/**
|
|
10566
10597
|
* Sync virtual account
|
|
10567
|
-
* @description Refreshes the bank account details and deposit instructions from the
|
|
10568
|
-
*
|
|
10598
|
+
* @description Refreshes the bank account details and deposit instructions from the provider
|
|
10599
|
+
* serving the account and updates the local record. Historical Rail.io
|
|
10569
10600
|
* (RAIL-B / RAIL-C) accounts cannot be refreshed — their stored requisites are
|
|
10570
10601
|
* returned unchanged.
|
|
10571
10602
|
*
|
|
@@ -10654,7 +10685,7 @@ export interface paths {
|
|
|
10654
10685
|
/**
|
|
10655
10686
|
* Get virtual account
|
|
10656
10687
|
* @description Retrieves detailed information about a specific virtual account.
|
|
10657
|
-
* For accounts linked to a
|
|
10688
|
+
* For accounts linked to a provider the requisites are refreshed
|
|
10658
10689
|
* from the vendor on read unless `skip_sync=true`; a failed refresh falls back to the
|
|
10659
10690
|
* cached data (still 200). Accounts without a vendor link and historical Rail.io
|
|
10660
10691
|
* accounts return the stored data.
|
|
@@ -12158,7 +12189,7 @@ export interface paths {
|
|
|
12158
12189
|
*
|
|
12159
12190
|
* **Access Control**: Owner or admin of the wallet; wallet KYC must be APPROVED
|
|
12160
12191
|
*
|
|
12161
|
-
* **Note**: New addresses are always provisioned
|
|
12192
|
+
* **Note**: New addresses are always provisioned with `type: utila`. The legacy `processing` provider was decommissioned; existing `processing` addresses remain readable.
|
|
12162
12193
|
*
|
|
12163
12194
|
*/
|
|
12164
12195
|
post: {
|
|
@@ -12663,7 +12694,10 @@ export interface paths {
|
|
|
12663
12694
|
*/
|
|
12664
12695
|
user_data_uuid: string;
|
|
12665
12696
|
/**
|
|
12666
|
-
* @description Role to assign to the user
|
|
12697
|
+
* @description Role to assign to the user. Must be one of the roles enabled for the tenant
|
|
12698
|
+
* (tenant config `allowed_roles`); any other role is refused with
|
|
12699
|
+
* 400 `ROLE_NOT_ALLOWED_FOR_TENANT`.
|
|
12700
|
+
*
|
|
12667
12701
|
* @enum {string}
|
|
12668
12702
|
*/
|
|
12669
12703
|
role: "auditor" | "user" | "admin";
|
|
@@ -12837,7 +12871,10 @@ export interface paths {
|
|
|
12837
12871
|
content: {
|
|
12838
12872
|
"application/json": {
|
|
12839
12873
|
/**
|
|
12840
|
-
* @description New role for the user
|
|
12874
|
+
* @description New role for the user. Must be one of the roles enabled for the tenant
|
|
12875
|
+
* (tenant config `allowed_roles`); any other role is refused with
|
|
12876
|
+
* 400 `ROLE_NOT_ALLOWED_FOR_TENANT`.
|
|
12877
|
+
*
|
|
12841
12878
|
* @enum {string}
|
|
12842
12879
|
*/
|
|
12843
12880
|
role: "auditor" | "user" | "admin";
|
|
@@ -13170,7 +13207,10 @@ export interface paths {
|
|
|
13170
13207
|
*/
|
|
13171
13208
|
email: string;
|
|
13172
13209
|
/**
|
|
13173
|
-
* @description Role to assign on acceptance
|
|
13210
|
+
* @description Role to assign on acceptance. Must be one of the roles enabled for the tenant
|
|
13211
|
+
* (tenant config `allowed_roles`); any other role is refused with
|
|
13212
|
+
* 400 `ROLE_NOT_ALLOWED_FOR_TENANT`.
|
|
13213
|
+
*
|
|
13174
13214
|
* @enum {string}
|
|
13175
13215
|
*/
|
|
13176
13216
|
role: "auditor" | "user" | "admin";
|
|
@@ -13430,7 +13470,7 @@ export interface components {
|
|
|
13430
13470
|
* @example EXCHANGE_OMNI
|
|
13431
13471
|
* @enum {string}
|
|
13432
13472
|
*/
|
|
13433
|
-
OrderTypeId: "EXCHANGE_OMNI" | "EXCHANGE_OMNI_ONRAMP" | "EXCHANGE_OMNI_OFFRAMP" | "EXCHANGE_OMNI_CRYPTO" | "EXCHANGE_CRYPTO_INTERNAL" | "L2F_ACH_ONRAMP" | "L2F_ACH_OFFRAMP" | "L2F_SEPA_ONRAMP" | "L2F_SEPA_OFFRAMP" | "L2F_SWIFT_ONRAMP" | "L2F_SWIFT_OFFRAMP" | "L2F_WIRE_ONRAMP" | "L2F_WIRE_OFFRAMP" | "L2F_CHAPS_ONRAMP" | "L2F_CHAPS_OFFRAMP" | "L2F_FPS_ONRAMP" | "L2F_FPS_OFFRAMP" | "BRL_WIRE_ONRAMP" | "BRL_WIRE_OFFRAMP" | "BRL_ACH_ONRAMP" | "BRL_ACH_OFFRAMP" | "BRL_RTP_OFFRAMP" | "DLS_WIRE_ONRAMP" | "DLS_WIRE_OFFRAMP" | "DLS_ACH_ONRAMP" | "DLS_ACH_OFFRAMP" | "DLS_SEPA_ONRAMP" | "DLS_SEPA_OFFRAMP" | "DLS_SWIFT_ONRAMP" | "DLS_SWIFT_OFFRAMP" | "BC1_SEPA_ONRAMP" | "BC1_SEPA_OFFRAMP" | "BC1_SWIFT_ONRAMP" | "BC1_SWIFT_OFFRAMP" | "BC3_SEPA_ONRAMP" | "BC3_SEPA_OFFRAMP" | "RPP_SWIFT_OFFRAMP" | "RPP_SEPA_OFFRAMP" | "RPP_FPS_OFFRAMP" | "RPP_ACH_OFFRAMP" | "OMNIBUS_CRYPTO_TRANSFER" | "OMNIBUS_CRYPTO_WITHDRAWAL" | "OMNIBUS_INTERNAL_TRANSFER" | "SEGREGATED_CRYPTO_TRANSFER" | "TRANSFER_INTERNAL" | "TRANSFER_CARD_PREPAID" | "TRANSFER_CARD_SUBACCOUNT" | "TRANSFER_CARD_WHOLESALE" | "WITHDRAW_CARD_PREPAID" | "WITHDRAW_CARD_SUBACCOUNT" | "REFUND_CARD_PREPAID" | "REFUND_CARD_SUBACCOUNT" | "RN_CARDS_OFFRAMP" | "CARD_ISSUING_FEE";
|
|
13473
|
+
OrderTypeId: "EXCHANGE_OMNI" | "EXCHANGE_OMNI_ONRAMP" | "EXCHANGE_OMNI_OFFRAMP" | "EXCHANGE_OMNI_CRYPTO" | "EXCHANGE_CRYPTO_INTERNAL" | "L2F_ACH_ONRAMP" | "L2F_ACH_OFFRAMP" | "L2F_SEPA_ONRAMP" | "L2F_SEPA_OFFRAMP" | "L2F_SWIFT_ONRAMP" | "L2F_SWIFT_OFFRAMP" | "L2F_WIRE_ONRAMP" | "L2F_WIRE_OFFRAMP" | "L2F_CHAPS_ONRAMP" | "L2F_CHAPS_OFFRAMP" | "L2F_FPS_ONRAMP" | "L2F_FPS_OFFRAMP" | "BRL_WIRE_ONRAMP" | "BRL_WIRE_OFFRAMP" | "BRL_ACH_ONRAMP" | "BRL_ACH_OFFRAMP" | "BRL_RTP_OFFRAMP" | "DLS_WIRE_ONRAMP" | "DLS_WIRE_OFFRAMP" | "DLS_ACH_ONRAMP" | "DLS_ACH_OFFRAMP" | "DLS_SEPA_ONRAMP" | "DLS_SEPA_OFFRAMP" | "DLS_SWIFT_ONRAMP" | "DLS_SWIFT_OFFRAMP" | "BC1_SEPA_ONRAMP" | "BC1_SEPA_OFFRAMP" | "BC1_SWIFT_ONRAMP" | "BC1_SWIFT_OFFRAMP" | "BC3_SEPA_ONRAMP" | "BC3_SEPA_OFFRAMP" | "RPP_SWIFT_OFFRAMP" | "RPP_SEPA_OFFRAMP" | "RPP_FPS_OFFRAMP" | "RPP_ACH_OFFRAMP" | "OMNIBUS_CRYPTO_TRANSFER" | "OMNIBUS_CRYPTO_WITHDRAWAL" | "OMNIBUS_INTERNAL_TRANSFER" | "SEGREGATED_CRYPTO_TRANSFER" | "TRANSFER_INTERNAL" | "TRANSFER_CARD_PREPAID" | "TRANSFER_CARD_SUBACCOUNT" | "TRANSFER_CARD_WHOLESALE" | "WITHDRAW_CARD_PREPAID" | "WITHDRAW_CARD_SUBACCOUNT" | "REFUND_CARD_PREPAID" | "REFUND_CARD_SUBACCOUNT" | "RN_CARDS_OFFRAMP" | "CARD_ISSUING_FEE" | "MONTHLY_FEE";
|
|
13434
13474
|
OrderCalculation: {
|
|
13435
13475
|
/**
|
|
13436
13476
|
* Format: uuid
|
|
@@ -13803,10 +13843,10 @@ export interface components {
|
|
|
13803
13843
|
cardholder_requirements?: {
|
|
13804
13844
|
/** @enum {string} */
|
|
13805
13845
|
level?: "minimal" | "basic" | "declared" | "full";
|
|
13806
|
-
/** @description Required field names; address fields are dotted (address.line1).
|
|
13846
|
+
/** @description Required field names; address fields are dotted (address.line1). Some CONSUMER programs also list gov_id_issuance_date and gov_id_expiration_date (ISO YYYY-MM-DD). */
|
|
13807
13847
|
required?: string[];
|
|
13808
13848
|
required_documents?: ("gov_id_front" | "gov_id_back" | "selfie")[];
|
|
13809
|
-
/** @description Human-readable constraints the field list cannot express.
|
|
13849
|
+
/** @description Human-readable constraints the field list cannot express — e.g. a CONSUMER program requiring tax_identification_number to be a valid SSN when nationality is USA. */
|
|
13810
13850
|
notes?: string[];
|
|
13811
13851
|
/** @description What each country changes, keyed by ISO 3166-1 alpha-3 with a `default` entry; empty when the vendor reviews nothing. These fields stay out of `required` because they only hold once the nationality or address country is known: read the rule for the nationality the user picked (required_by_nationality), the rule for the address country (required_by_address), and the rule for the country that issued the document (gov_id_types). */
|
|
13812
13852
|
country_rules?: {
|
|
@@ -14045,7 +14085,7 @@ export interface components {
|
|
|
14045
14085
|
transaction_amount: number;
|
|
14046
14086
|
/** @example USD */
|
|
14047
14087
|
transaction_currency: string;
|
|
14048
|
-
/** @description What actually left the card: `billing_amount` plus `fee` for a debit. Show this one when a fee sits inside the operation. */
|
|
14088
|
+
/** @description What actually left the card: `billing_amount` plus `fee` for a debit, minus it for a credit, and 0 when `status` is `DECLINED` — a refusal moves no money, however much the vendor quoted for it. Show this one when a fee sits inside the operation. */
|
|
14049
14089
|
total_amount?: number;
|
|
14050
14090
|
/** @description Fee charged inside this operation, in billing currency. 0 for vendors that bill fees as their own transactions (those arrive as separate rows with `transaction_type: FEE`). */
|
|
14051
14091
|
fee?: number;
|
|
@@ -14926,11 +14966,20 @@ export interface components {
|
|
|
14926
14966
|
* @default false
|
|
14927
14967
|
*/
|
|
14928
14968
|
is_reverse: boolean;
|
|
14929
|
-
/**
|
|
14969
|
+
/**
|
|
14970
|
+
* Format: uuid
|
|
14971
|
+
* @description Currency debited from the wallet.
|
|
14972
|
+
*/
|
|
14930
14973
|
from_currency_id: string;
|
|
14931
|
-
/**
|
|
14974
|
+
/**
|
|
14975
|
+
* Format: uuid
|
|
14976
|
+
* @description Optional. Currency delivered on-chain to the destination. Omitted or equal to `from_currency_id`: a plain transfer of the same asset. Different: a cross-currency send — the wallet is debited in `from_currency_id`, the destination receives `amount_to` in `to_currency_id` at the tenant's `OMNIBUS_CRYPTO_TRANSFER` exchange rate (like the fiat offramps). Requires a configured pair (`400 EXCHANGE_RATE_NOT_FOUND`), an on-chain currency (`400 INVALID_REQUEST`) and a destination registered on the network of `to_currency_id` (`400 DESTINATION_CHAIN_MISMATCH`). Preview with `POST /frontend/orders/calc`.
|
|
14977
|
+
*/
|
|
14932
14978
|
to_currency_id?: string;
|
|
14933
|
-
/**
|
|
14979
|
+
/**
|
|
14980
|
+
* Format: uuid
|
|
14981
|
+
* @description A `CRYPTO_EXTERNAL` counterparty destination. For a cross-currency send its address must be on the network of `to_currency_id`.
|
|
14982
|
+
*/
|
|
14934
14983
|
counterparty_destination_id: string;
|
|
14935
14984
|
/** Format: uuid */
|
|
14936
14985
|
wallet_account_id?: string;
|
|
@@ -15398,7 +15447,7 @@ export interface components {
|
|
|
15398
15447
|
/** Format: uuid */
|
|
15399
15448
|
id: string;
|
|
15400
15449
|
/** @enum {string} */
|
|
15401
|
-
type: "DEPOSIT_RECEIVED" | "TRANSFER_RECEIVED" | "ORDER_STATUS_CHANGED" | "KYC_STATUS_CHANGED" | "ANNOUNCEMENT" | "SYSTEM_MESSAGE";
|
|
15450
|
+
type: "DEPOSIT_RECEIVED" | "TRANSFER_RECEIVED" | "ORDER_STATUS_CHANGED" | "KYC_STATUS_CHANGED" | "ANNOUNCEMENT" | "SYSTEM_MESSAGE" | "MASS_PAYOUT_STATUS_CHANGED" | "CARD_OTP";
|
|
15402
15451
|
/** @description Structured fact snapshot; the client renders the presentation. Shape depends on `type`; evolution is additive-only. */
|
|
15403
15452
|
payload: Record<string, never>;
|
|
15404
15453
|
/** Format: uuid */
|
|
@@ -15410,12 +15459,12 @@ export interface components {
|
|
|
15410
15459
|
};
|
|
15411
15460
|
NotificationPreference: {
|
|
15412
15461
|
/** @enum {string} */
|
|
15413
|
-
channel: "IN_APP" | "PUSH" | "EMAIL" | "TELEGRAM";
|
|
15462
|
+
channel: "IN_APP" | "PUSH" | "EMAIL" | "TELEGRAM" | "SMS";
|
|
15414
15463
|
enabled: boolean;
|
|
15415
15464
|
};
|
|
15416
15465
|
NotificationCategoryPreference: {
|
|
15417
15466
|
/** @enum {string} */
|
|
15418
|
-
category: "TRANSACTIONS" | "COMPLIANCE" | "ANNOUNCEMENTS" | "SYSTEM";
|
|
15467
|
+
category: "TRANSACTIONS" | "COMPLIANCE" | "ANNOUNCEMENTS" | "SYSTEM" | "SECURITY";
|
|
15419
15468
|
enabled: boolean;
|
|
15420
15469
|
};
|
|
15421
15470
|
};
|
|
@@ -5541,6 +5541,14 @@ export interface paths {
|
|
|
5541
5541
|
* **External transfer:** If the address is external, creates an `OMNIBUS_CRYPTO_TRANSFER` order
|
|
5542
5542
|
* in status `NEW`, triggers async QStash workflow for blockchain transaction.
|
|
5543
5543
|
*
|
|
5544
|
+
* **Cross-currency send:** a `to_currency_id` different from `from_currency_id` debits
|
|
5545
|
+
* `from_currency_id` and delivers `amount_to` in `to_currency_id` on its own network, at the
|
|
5546
|
+
* tenant's exchange rate for this order type (`400 EXCHANGE_RATE_NOT_FOUND` when the pair is
|
|
5547
|
+
* not configured, `400 INVALID_REQUEST` when `to_currency_id` is not on-chain,
|
|
5548
|
+
* `400 DESTINATION_CHAIN_MISMATCH` when the destination is registered on another network).
|
|
5549
|
+
* The internal downgrade moves one currency only, so it refuses a different `to_currency_id`
|
|
5550
|
+
* with `400 INVALID_REQUEST`.
|
|
5551
|
+
*
|
|
5544
5552
|
*/
|
|
5545
5553
|
post: {
|
|
5546
5554
|
parameters: {
|
|
@@ -5586,9 +5594,14 @@ export interface paths {
|
|
|
5586
5594
|
wallet_account_id?: string;
|
|
5587
5595
|
/**
|
|
5588
5596
|
* Format: uuid
|
|
5589
|
-
* @description Currency
|
|
5597
|
+
* @description Currency debited from the wallet
|
|
5590
5598
|
*/
|
|
5591
5599
|
from_currency_id: string;
|
|
5600
|
+
/**
|
|
5601
|
+
* Format: uuid
|
|
5602
|
+
* @description Optional. Currency delivered on-chain; omitted or equal to `from_currency_id` is a plain same-asset transfer, a different value is a cross-currency send (see above)
|
|
5603
|
+
*/
|
|
5604
|
+
to_currency_id?: string;
|
|
5592
5605
|
/**
|
|
5593
5606
|
* @description Calculate in reverse (starting from the destination amount). Ignored for internal transfers.
|
|
5594
5607
|
* @example false
|
|
@@ -7154,7 +7167,7 @@ export interface components {
|
|
|
7154
7167
|
* @example EXCHANGE_OMNI
|
|
7155
7168
|
* @enum {string}
|
|
7156
7169
|
*/
|
|
7157
|
-
OrderTypeId: "EXCHANGE_OMNI" | "EXCHANGE_OMNI_ONRAMP" | "EXCHANGE_OMNI_OFFRAMP" | "EXCHANGE_OMNI_CRYPTO" | "EXCHANGE_CRYPTO_INTERNAL" | "L2F_ACH_ONRAMP" | "L2F_ACH_OFFRAMP" | "L2F_SEPA_ONRAMP" | "L2F_SEPA_OFFRAMP" | "L2F_SWIFT_ONRAMP" | "L2F_SWIFT_OFFRAMP" | "L2F_WIRE_ONRAMP" | "L2F_WIRE_OFFRAMP" | "L2F_CHAPS_ONRAMP" | "L2F_CHAPS_OFFRAMP" | "L2F_FPS_ONRAMP" | "L2F_FPS_OFFRAMP" | "BRL_WIRE_ONRAMP" | "BRL_WIRE_OFFRAMP" | "BRL_ACH_ONRAMP" | "BRL_ACH_OFFRAMP" | "BRL_RTP_OFFRAMP" | "DLS_WIRE_ONRAMP" | "DLS_WIRE_OFFRAMP" | "DLS_ACH_ONRAMP" | "DLS_ACH_OFFRAMP" | "DLS_SEPA_ONRAMP" | "DLS_SEPA_OFFRAMP" | "DLS_SWIFT_ONRAMP" | "DLS_SWIFT_OFFRAMP" | "BC1_SEPA_ONRAMP" | "BC1_SEPA_OFFRAMP" | "BC1_SWIFT_ONRAMP" | "BC1_SWIFT_OFFRAMP" | "BC3_SEPA_ONRAMP" | "BC3_SEPA_OFFRAMP" | "RPP_SWIFT_OFFRAMP" | "RPP_SEPA_OFFRAMP" | "RPP_FPS_OFFRAMP" | "RPP_ACH_OFFRAMP" | "OMNIBUS_CRYPTO_TRANSFER" | "OMNIBUS_CRYPTO_WITHDRAWAL" | "OMNIBUS_INTERNAL_TRANSFER" | "SEGREGATED_CRYPTO_TRANSFER" | "TRANSFER_INTERNAL" | "TRANSFER_CARD_PREPAID" | "TRANSFER_CARD_SUBACCOUNT" | "TRANSFER_CARD_WHOLESALE" | "WITHDRAW_CARD_PREPAID" | "WITHDRAW_CARD_SUBACCOUNT" | "REFUND_CARD_PREPAID" | "REFUND_CARD_SUBACCOUNT" | "RN_CARDS_OFFRAMP" | "CARD_ISSUING_FEE";
|
|
7170
|
+
OrderTypeId: "EXCHANGE_OMNI" | "EXCHANGE_OMNI_ONRAMP" | "EXCHANGE_OMNI_OFFRAMP" | "EXCHANGE_OMNI_CRYPTO" | "EXCHANGE_CRYPTO_INTERNAL" | "L2F_ACH_ONRAMP" | "L2F_ACH_OFFRAMP" | "L2F_SEPA_ONRAMP" | "L2F_SEPA_OFFRAMP" | "L2F_SWIFT_ONRAMP" | "L2F_SWIFT_OFFRAMP" | "L2F_WIRE_ONRAMP" | "L2F_WIRE_OFFRAMP" | "L2F_CHAPS_ONRAMP" | "L2F_CHAPS_OFFRAMP" | "L2F_FPS_ONRAMP" | "L2F_FPS_OFFRAMP" | "BRL_WIRE_ONRAMP" | "BRL_WIRE_OFFRAMP" | "BRL_ACH_ONRAMP" | "BRL_ACH_OFFRAMP" | "BRL_RTP_OFFRAMP" | "DLS_WIRE_ONRAMP" | "DLS_WIRE_OFFRAMP" | "DLS_ACH_ONRAMP" | "DLS_ACH_OFFRAMP" | "DLS_SEPA_ONRAMP" | "DLS_SEPA_OFFRAMP" | "DLS_SWIFT_ONRAMP" | "DLS_SWIFT_OFFRAMP" | "BC1_SEPA_ONRAMP" | "BC1_SEPA_OFFRAMP" | "BC1_SWIFT_ONRAMP" | "BC1_SWIFT_OFFRAMP" | "BC3_SEPA_ONRAMP" | "BC3_SEPA_OFFRAMP" | "RPP_SWIFT_OFFRAMP" | "RPP_SEPA_OFFRAMP" | "RPP_FPS_OFFRAMP" | "RPP_ACH_OFFRAMP" | "OMNIBUS_CRYPTO_TRANSFER" | "OMNIBUS_CRYPTO_WITHDRAWAL" | "OMNIBUS_INTERNAL_TRANSFER" | "SEGREGATED_CRYPTO_TRANSFER" | "TRANSFER_INTERNAL" | "TRANSFER_CARD_PREPAID" | "TRANSFER_CARD_SUBACCOUNT" | "TRANSFER_CARD_WHOLESALE" | "WITHDRAW_CARD_PREPAID" | "WITHDRAW_CARD_SUBACCOUNT" | "REFUND_CARD_PREPAID" | "REFUND_CARD_SUBACCOUNT" | "RN_CARDS_OFFRAMP" | "CARD_ISSUING_FEE" | "MONTHLY_FEE";
|
|
7158
7171
|
/** @description Order type reference with optional product guardrails, associated KYC rails and tenant billing rates */
|
|
7159
7172
|
OrderType: {
|
|
7160
7173
|
/** @description Order type identifier (e.g. EXCHANGE, WITHDRAWAL_CRYPTO) */
|
|
@@ -1194,7 +1194,7 @@ export interface paths {
|
|
|
1194
1194
|
post?: never;
|
|
1195
1195
|
/**
|
|
1196
1196
|
* Delete crypto wallet
|
|
1197
|
-
* @description Soft-deletes a crypto wallet and archives it
|
|
1197
|
+
* @description Soft-deletes a crypto wallet and archives it with the custody provider.
|
|
1198
1198
|
* The wallet is marked as deleted and all addresses are deactivated.
|
|
1199
1199
|
*
|
|
1200
1200
|
*/
|
|
@@ -2578,6 +2578,10 @@ export interface paths {
|
|
|
2578
2578
|
* @default false
|
|
2579
2579
|
*/
|
|
2580
2580
|
is_reverse?: boolean;
|
|
2581
|
+
/** @description Free-form reference visible in order/transaction listings */
|
|
2582
|
+
reference?: string;
|
|
2583
|
+
/** @description Internal note attached to the order */
|
|
2584
|
+
note?: string;
|
|
2581
2585
|
/**
|
|
2582
2586
|
* Format: date-time
|
|
2583
2587
|
* @description Optional. Schedule the transfer for a future time (min 1 hour, max 90 days ahead). No funds are reserved; after approval the order waits in EXPECTED status and executes automatically.
|
|
@@ -2655,6 +2659,17 @@ export interface paths {
|
|
|
2655
2659
|
* a wallet on this platform. Internal (off-chain) transfers are created
|
|
2656
2660
|
* only through the internal transfer endpoint.
|
|
2657
2661
|
*
|
|
2662
|
+
* **Cross-currency send (optional).** A `to_currency_id` different from
|
|
2663
|
+
* `from_currency_id` converts on the way out, like the fiat offramps: the
|
|
2664
|
+
* wallet is debited in `from_currency_id`, the destination receives
|
|
2665
|
+
* `amount_to` in `to_currency_id` at the tenant's exchange rate for this
|
|
2666
|
+
* order type. The pair must be configured (`400 EXCHANGE_RATE_NOT_FOUND`),
|
|
2667
|
+
* `to_currency_id` must be on-chain (`400 INVALID_REQUEST`) and the
|
|
2668
|
+
* destination must be registered on the network of `to_currency_id`
|
|
2669
|
+
* (`400 DESTINATION_CHAIN_MISMATCH`). Preview with
|
|
2670
|
+
* `POST /admin/orders/calc`. Omitted or equal `to_currency_id` is the
|
|
2671
|
+
* plain same-asset transfer.
|
|
2672
|
+
*
|
|
2658
2673
|
*/
|
|
2659
2674
|
post: {
|
|
2660
2675
|
parameters: {
|
|
@@ -6213,7 +6228,7 @@ export interface paths {
|
|
|
6213
6228
|
*/
|
|
6214
6229
|
gov_id_expiration_date?: string;
|
|
6215
6230
|
/**
|
|
6216
|
-
* @description Tax identifier of the cardholder, separate from the document number. Required by
|
|
6231
|
+
* @description Tax identifier of the cardholder, separate from the document number. Required by some CONSUMER programs when nationality is USA, where it must be a valid SSN (9 digits or XXX-XX-XXXX).
|
|
6217
6232
|
*
|
|
6218
6233
|
* @example 123-45-6789
|
|
6219
6234
|
*/
|
|
@@ -6409,7 +6424,7 @@ export interface paths {
|
|
|
6409
6424
|
gov_id_issuance_date?: string;
|
|
6410
6425
|
/** Format: date */
|
|
6411
6426
|
gov_id_expiration_date?: string;
|
|
6412
|
-
/** @description Tax identifier (USA +
|
|
6427
|
+
/** @description Tax identifier (USA + CONSUMER programs that require it: SSN, 9 digits or XXX-XX-XXXX) */
|
|
6413
6428
|
tax_identification_number?: string;
|
|
6414
6429
|
address?: {
|
|
6415
6430
|
line1?: string;
|
|
@@ -7928,7 +7943,7 @@ export interface components {
|
|
|
7928
7943
|
*/
|
|
7929
7944
|
cvv: string;
|
|
7930
7945
|
/**
|
|
7931
|
-
* @description 3-D Secure password where the
|
|
7946
|
+
* @description 3-D Secure password where the card program exposes one; `null` otherwise.
|
|
7932
7947
|
* @example null
|
|
7933
7948
|
*/
|
|
7934
7949
|
security_code: string | null;
|
|
@@ -8678,7 +8693,7 @@ export interface components {
|
|
|
8678
8693
|
* @example EXCHANGE_OMNI
|
|
8679
8694
|
* @enum {string}
|
|
8680
8695
|
*/
|
|
8681
|
-
OrderTypeId: "EXCHANGE_OMNI" | "EXCHANGE_OMNI_ONRAMP" | "EXCHANGE_OMNI_OFFRAMP" | "EXCHANGE_OMNI_CRYPTO" | "EXCHANGE_CRYPTO_INTERNAL" | "L2F_ACH_ONRAMP" | "L2F_ACH_OFFRAMP" | "L2F_SEPA_ONRAMP" | "L2F_SEPA_OFFRAMP" | "L2F_SWIFT_ONRAMP" | "L2F_SWIFT_OFFRAMP" | "L2F_WIRE_ONRAMP" | "L2F_WIRE_OFFRAMP" | "L2F_CHAPS_ONRAMP" | "L2F_CHAPS_OFFRAMP" | "L2F_FPS_ONRAMP" | "L2F_FPS_OFFRAMP" | "BRL_WIRE_ONRAMP" | "BRL_WIRE_OFFRAMP" | "BRL_ACH_ONRAMP" | "BRL_ACH_OFFRAMP" | "BRL_RTP_OFFRAMP" | "DLS_WIRE_ONRAMP" | "DLS_WIRE_OFFRAMP" | "DLS_ACH_ONRAMP" | "DLS_ACH_OFFRAMP" | "DLS_SEPA_ONRAMP" | "DLS_SEPA_OFFRAMP" | "DLS_SWIFT_ONRAMP" | "DLS_SWIFT_OFFRAMP" | "BC1_SEPA_ONRAMP" | "BC1_SEPA_OFFRAMP" | "BC1_SWIFT_ONRAMP" | "BC1_SWIFT_OFFRAMP" | "BC3_SEPA_ONRAMP" | "BC3_SEPA_OFFRAMP" | "RPP_SWIFT_OFFRAMP" | "RPP_SEPA_OFFRAMP" | "RPP_FPS_OFFRAMP" | "RPP_ACH_OFFRAMP" | "OMNIBUS_CRYPTO_TRANSFER" | "OMNIBUS_CRYPTO_WITHDRAWAL" | "OMNIBUS_INTERNAL_TRANSFER" | "SEGREGATED_CRYPTO_TRANSFER" | "TRANSFER_INTERNAL" | "TRANSFER_CARD_PREPAID" | "TRANSFER_CARD_SUBACCOUNT" | "TRANSFER_CARD_WHOLESALE" | "WITHDRAW_CARD_PREPAID" | "WITHDRAW_CARD_SUBACCOUNT" | "REFUND_CARD_PREPAID" | "REFUND_CARD_SUBACCOUNT" | "RN_CARDS_OFFRAMP" | "CARD_ISSUING_FEE";
|
|
8696
|
+
OrderTypeId: "EXCHANGE_OMNI" | "EXCHANGE_OMNI_ONRAMP" | "EXCHANGE_OMNI_OFFRAMP" | "EXCHANGE_OMNI_CRYPTO" | "EXCHANGE_CRYPTO_INTERNAL" | "L2F_ACH_ONRAMP" | "L2F_ACH_OFFRAMP" | "L2F_SEPA_ONRAMP" | "L2F_SEPA_OFFRAMP" | "L2F_SWIFT_ONRAMP" | "L2F_SWIFT_OFFRAMP" | "L2F_WIRE_ONRAMP" | "L2F_WIRE_OFFRAMP" | "L2F_CHAPS_ONRAMP" | "L2F_CHAPS_OFFRAMP" | "L2F_FPS_ONRAMP" | "L2F_FPS_OFFRAMP" | "BRL_WIRE_ONRAMP" | "BRL_WIRE_OFFRAMP" | "BRL_ACH_ONRAMP" | "BRL_ACH_OFFRAMP" | "BRL_RTP_OFFRAMP" | "DLS_WIRE_ONRAMP" | "DLS_WIRE_OFFRAMP" | "DLS_ACH_ONRAMP" | "DLS_ACH_OFFRAMP" | "DLS_SEPA_ONRAMP" | "DLS_SEPA_OFFRAMP" | "DLS_SWIFT_ONRAMP" | "DLS_SWIFT_OFFRAMP" | "BC1_SEPA_ONRAMP" | "BC1_SEPA_OFFRAMP" | "BC1_SWIFT_ONRAMP" | "BC1_SWIFT_OFFRAMP" | "BC3_SEPA_ONRAMP" | "BC3_SEPA_OFFRAMP" | "RPP_SWIFT_OFFRAMP" | "RPP_SEPA_OFFRAMP" | "RPP_FPS_OFFRAMP" | "RPP_ACH_OFFRAMP" | "OMNIBUS_CRYPTO_TRANSFER" | "OMNIBUS_CRYPTO_WITHDRAWAL" | "OMNIBUS_INTERNAL_TRANSFER" | "SEGREGATED_CRYPTO_TRANSFER" | "TRANSFER_INTERNAL" | "TRANSFER_CARD_PREPAID" | "TRANSFER_CARD_SUBACCOUNT" | "TRANSFER_CARD_WHOLESALE" | "WITHDRAW_CARD_PREPAID" | "WITHDRAW_CARD_SUBACCOUNT" | "REFUND_CARD_PREPAID" | "REFUND_CARD_SUBACCOUNT" | "RN_CARDS_OFFRAMP" | "CARD_ISSUING_FEE" | "MONTHLY_FEE";
|
|
8682
8697
|
OrderType: {
|
|
8683
8698
|
id?: components["schemas"]["OrderTypeId"];
|
|
8684
8699
|
description?: string;
|
|
@@ -8732,9 +8747,20 @@ export interface components {
|
|
|
8732
8747
|
* @default false
|
|
8733
8748
|
*/
|
|
8734
8749
|
is_reverse: boolean;
|
|
8735
|
-
/**
|
|
8750
|
+
/**
|
|
8751
|
+
* Format: uuid
|
|
8752
|
+
* @description Currency debited from the wallet.
|
|
8753
|
+
*/
|
|
8736
8754
|
from_currency_id: string;
|
|
8737
|
-
/**
|
|
8755
|
+
/**
|
|
8756
|
+
* Format: uuid
|
|
8757
|
+
* @description Optional. Currency delivered on-chain to the destination. Omitted or equal to `from_currency_id`: a plain transfer of the same asset. Different: a cross-currency send — the wallet is debited in `from_currency_id`, the destination receives `amount_to` in `to_currency_id` at the tenant's `OMNIBUS_CRYPTO_TRANSFER` exchange rate (like the fiat offramps). Requires a configured pair (`400 EXCHANGE_RATE_NOT_FOUND`), an on-chain currency (`400 INVALID_REQUEST`) and a destination registered on the network of `to_currency_id` (`400 DESTINATION_CHAIN_MISMATCH`). Preview with `POST /admin/orders/calc`.
|
|
8758
|
+
*/
|
|
8759
|
+
to_currency_id?: string;
|
|
8760
|
+
/**
|
|
8761
|
+
* Format: uuid
|
|
8762
|
+
* @description A `CRYPTO_EXTERNAL` counterparty destination. For a cross-currency send its address must be on the network of `to_currency_id`.
|
|
8763
|
+
*/
|
|
8738
8764
|
counterparty_destination_id: string;
|
|
8739
8765
|
/** @description Free-form reference visible in order/transaction listings */
|
|
8740
8766
|
reference?: string;
|
|
@@ -2036,6 +2036,12 @@ export interface components {
|
|
|
2036
2036
|
* "business"
|
|
2037
2037
|
* ] */
|
|
2038
2038
|
allowed_kyc_entity_types: ("individual" | "business" | "universal")[] | null;
|
|
2039
|
+
/** @example [
|
|
2040
|
+
* "owner",
|
|
2041
|
+
* "admin",
|
|
2042
|
+
* "auditor"
|
|
2043
|
+
* ] */
|
|
2044
|
+
allowed_roles: ("owner" | "admin" | "user" | "auditor")[];
|
|
2039
2045
|
tg_bot_name: string | null;
|
|
2040
2046
|
theme_switch: boolean;
|
|
2041
2047
|
enable_exchange: boolean;
|
|
@@ -3844,6 +3850,8 @@ export interface operations {
|
|
|
3844
3850
|
query?: {
|
|
3845
3851
|
/** @description Whether to prefill the provider verification with the current user data (email, phone, name). Defaults to true. */
|
|
3846
3852
|
prefill?: boolean;
|
|
3853
|
+
/** @description Reuse the current user's approved user-level verification for this entity instead of collecting it again. Omit to take the per-type default: individual reuses it (the dossier is the user), business does not (reuse means "I am a UBO of this company" and is opt-in). Pass false to opt out, true to require it — an explicit true fails when the user-level verification is not approved, while the default silently falls back to a normal verification. Only honoured by providers that keep a reusable user-level verification. */
|
|
3854
|
+
reuse_user_verification?: boolean;
|
|
3847
3855
|
};
|
|
3848
3856
|
header?: never;
|
|
3849
3857
|
path: {
|
|
@@ -3861,6 +3869,13 @@ export interface operations {
|
|
|
3861
3869
|
"application/json": components["schemas"]["InitKycDataCollectionResponseDto"];
|
|
3862
3870
|
};
|
|
3863
3871
|
};
|
|
3872
|
+
/** @description reuse_user_verification requested for an entity type that supports no reuse */
|
|
3873
|
+
400: {
|
|
3874
|
+
headers: {
|
|
3875
|
+
[name: string]: unknown;
|
|
3876
|
+
};
|
|
3877
|
+
content?: never;
|
|
3878
|
+
};
|
|
3864
3879
|
/** @description Unauthorized */
|
|
3865
3880
|
401: {
|
|
3866
3881
|
headers: {
|
|
@@ -1287,6 +1287,25 @@ export declare namespace API {
|
|
|
1287
1287
|
type Request = operations['KycEntitiesController_findOne']['parameters']['path'];
|
|
1288
1288
|
type Response = operations['KycEntitiesController_findOne']['responses']['200']['content']['application/json'];
|
|
1289
1289
|
}
|
|
1290
|
+
namespace Create {
|
|
1291
|
+
type Request = operations['KycEntitiesController_create']['requestBody']['content']['application/json'];
|
|
1292
|
+
type Response = operations['KycEntitiesController_create']['responses']['201']['content']['application/json'];
|
|
1293
|
+
}
|
|
1294
|
+
namespace List {
|
|
1295
|
+
type Response = operations['KycEntitiesController_findMy']['responses']['200']['content']['application/json'];
|
|
1296
|
+
}
|
|
1297
|
+
namespace GetById {
|
|
1298
|
+
type Request = operations['KycEntitiesController_findById']['parameters']['path'];
|
|
1299
|
+
type Response = operations['KycEntitiesController_findById']['responses']['200']['content']['application/json'];
|
|
1300
|
+
}
|
|
1301
|
+
namespace Init {
|
|
1302
|
+
type Request = operations['KycEntitiesController_initDataCollection']['parameters']['path'] & NonNullable<operations['KycEntitiesController_initDataCollection']['parameters']['query']>;
|
|
1303
|
+
type Response = operations['KycEntitiesController_initDataCollection']['responses']['200']['content']['application/json'];
|
|
1304
|
+
}
|
|
1305
|
+
namespace Resume {
|
|
1306
|
+
type Request = operations['KycEntitiesController_resumeDataCollection']['parameters']['path'];
|
|
1307
|
+
type Response = operations['KycEntitiesController_resumeDataCollection']['responses']['200']['content']['application/json'];
|
|
1308
|
+
}
|
|
1290
1309
|
}
|
|
1291
1310
|
export namespace Forms {
|
|
1292
1311
|
namespace FormField {
|