squarefi-bff-api-module 1.36.33 → 1.36.34

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.
@@ -6332,13 +6332,13 @@ export interface paths {
6332
6332
  get: {
6333
6333
  parameters: {
6334
6334
  query?: {
6335
- /** @description Filter by status (comma-separated for multi-select) */
6335
+ /** @description Filter by status (comma-separated for multi-select — new, pending, processing, complete, canceled, failed) */
6336
6336
  status?: string;
6337
- /** @description Transaction type filter */
6338
- type?: string;
6337
+ /** @description Transaction type (direction) */
6338
+ type?: "deposit" | "withdrawal";
6339
6339
  /** @description Transaction method filter */
6340
- method?: string;
6341
- /** @description Record type filter */
6340
+ method?: "p2p" | "crypto" | "bank_transfer" | "exchange" | "sbp" | "internal_fiat";
6341
+ /** @description Transaction subtype (e.g. `DEPOSIT_CRYPTO_EXTERNAL`, `CARD_PROVIDER_DEPOSIT`) */
6342
6342
  record_type?: string;
6343
6343
  /** @description Filter by sender or recipient address (matches `from` OR `to` fields) */
6344
6344
  address?: string;
@@ -7657,6 +7657,208 @@ export interface paths {
7657
7657
  patch?: never;
7658
7658
  trace?: never;
7659
7659
  };
7660
+ "/frontend/user_verification/init": {
7661
+ parameters: {
7662
+ query?: never;
7663
+ header?: never;
7664
+ path?: never;
7665
+ cookie?: never;
7666
+ };
7667
+ get?: never;
7668
+ put?: never;
7669
+ /**
7670
+ * Initialize user-level Sumsub verification
7671
+ * @description Starts (or upgrades) the caller's user-level Sumsub verification via
7672
+ * the Auth API. The chosen `flow` maps to a tenant-configured Sumsub
7673
+ * level — `data` (personal information), `documents` (+identity
7674
+ * document) or `face` (+face check) — and the whole level is completed
7675
+ * as one WebSDK session. Returns the Sumsub applicant id plus a
7676
+ * short-lived WebSDK access token. The caller's Bearer token is
7677
+ * forwarded to the Auth API.
7678
+ *
7679
+ * User-scoped: no wallet is involved, unlike
7680
+ * `/frontend/kyc_verification/{wallet_id}/init`.
7681
+ *
7682
+ * **Authentication**: Bearer token with x-tenant-id header required
7683
+ *
7684
+ */
7685
+ post: {
7686
+ parameters: {
7687
+ query?: never;
7688
+ header?: never;
7689
+ path?: never;
7690
+ cookie?: never;
7691
+ };
7692
+ requestBody: {
7693
+ content: {
7694
+ "application/json": {
7695
+ /**
7696
+ * @description Verification tier to complete as one SDK session
7697
+ * @enum {string}
7698
+ */
7699
+ flow: "data" | "documents" | "face";
7700
+ };
7701
+ };
7702
+ };
7703
+ responses: {
7704
+ /** @description User verification initialized */
7705
+ 200: {
7706
+ headers: {
7707
+ [name: string]: unknown;
7708
+ };
7709
+ content: {
7710
+ "application/json": {
7711
+ /** @example true */
7712
+ success: boolean;
7713
+ data: {
7714
+ /**
7715
+ * @description Echo of the requested flow
7716
+ * @enum {string}
7717
+ */
7718
+ flow: "data" | "documents" | "face";
7719
+ /** @description Sumsub applicantId */
7720
+ verification_id: string;
7721
+ /** @description Short-lived WebSDK access token — otherwise null */
7722
+ verification_token?: string | null;
7723
+ };
7724
+ };
7725
+ };
7726
+ };
7727
+ /** @description Validation error (`flow` missing or not in [data, documents, face]) */
7728
+ 400: {
7729
+ headers: {
7730
+ [name: string]: unknown;
7731
+ };
7732
+ content: {
7733
+ "application/json": components["schemas"]["ErrorResponse"];
7734
+ };
7735
+ };
7736
+ /** @description Missing or invalid Bearer token */
7737
+ 401: {
7738
+ headers: {
7739
+ [name: string]: unknown;
7740
+ };
7741
+ content: {
7742
+ "application/json": components["schemas"]["ErrorResponse"];
7743
+ };
7744
+ };
7745
+ /** @description User verification is not enabled for the tenant (no Sumsub levels configured) */
7746
+ 404: {
7747
+ headers: {
7748
+ [name: string]: unknown;
7749
+ };
7750
+ content: {
7751
+ "application/json": components["schemas"]["ErrorResponse"];
7752
+ };
7753
+ };
7754
+ /** @description A concurrent init for the same user is in progress (per-user lock) */
7755
+ 409: {
7756
+ headers: {
7757
+ [name: string]: unknown;
7758
+ };
7759
+ content: {
7760
+ "application/json": components["schemas"]["ErrorResponse"];
7761
+ };
7762
+ };
7763
+ /** @description Auth API unavailable, timed out, or returned a malformed payload */
7764
+ 502: {
7765
+ headers: {
7766
+ [name: string]: unknown;
7767
+ };
7768
+ content: {
7769
+ "application/json": components["schemas"]["ErrorResponse"];
7770
+ };
7771
+ };
7772
+ };
7773
+ };
7774
+ delete?: never;
7775
+ options?: never;
7776
+ head?: never;
7777
+ patch?: never;
7778
+ trace?: never;
7779
+ };
7780
+ "/frontend/user_verification/resume": {
7781
+ parameters: {
7782
+ query?: never;
7783
+ header?: never;
7784
+ path?: never;
7785
+ cookie?: never;
7786
+ };
7787
+ get?: never;
7788
+ put?: never;
7789
+ /**
7790
+ * Resume user-level Sumsub verification
7791
+ * @description Re-issues the short-lived WebSDK access token for the level the caller
7792
+ * is already on (the WebSDK's expirationHandler contract). The caller's
7793
+ * Bearer token is forwarded to the Auth API.
7794
+ *
7795
+ * **Authentication**: Bearer token with x-tenant-id header required
7796
+ *
7797
+ */
7798
+ post: {
7799
+ parameters: {
7800
+ query?: never;
7801
+ header?: never;
7802
+ path?: never;
7803
+ cookie?: never;
7804
+ };
7805
+ requestBody?: never;
7806
+ responses: {
7807
+ /** @description User verification resumed */
7808
+ 200: {
7809
+ headers: {
7810
+ [name: string]: unknown;
7811
+ };
7812
+ content: {
7813
+ "application/json": {
7814
+ /** @example true */
7815
+ success: boolean;
7816
+ data: {
7817
+ /** @description Always null on resume — the Auth API resumes the current level */
7818
+ flow?: string | null;
7819
+ /** @description Sumsub applicantId */
7820
+ verification_id: string;
7821
+ /** @description Short-lived WebSDK access token — otherwise null */
7822
+ verification_token?: string | null;
7823
+ };
7824
+ };
7825
+ };
7826
+ };
7827
+ /** @description Missing or invalid Bearer token */
7828
+ 401: {
7829
+ headers: {
7830
+ [name: string]: unknown;
7831
+ };
7832
+ content: {
7833
+ "application/json": components["schemas"]["ErrorResponse"];
7834
+ };
7835
+ };
7836
+ /** @description Verification not initialized for this user */
7837
+ 404: {
7838
+ headers: {
7839
+ [name: string]: unknown;
7840
+ };
7841
+ content: {
7842
+ "application/json": components["schemas"]["ErrorResponse"];
7843
+ };
7844
+ };
7845
+ /** @description Auth API unavailable, timed out, or returned a malformed payload */
7846
+ 502: {
7847
+ headers: {
7848
+ [name: string]: unknown;
7849
+ };
7850
+ content: {
7851
+ "application/json": components["schemas"]["ErrorResponse"];
7852
+ };
7853
+ };
7854
+ };
7855
+ };
7856
+ delete?: never;
7857
+ options?: never;
7858
+ head?: never;
7859
+ patch?: never;
7860
+ trace?: never;
7861
+ };
7660
7862
  "/frontend/virtual-accounts/wallet/{wallet_id}": {
7661
7863
  parameters: {
7662
7864
  query?: never;
@@ -9556,13 +9758,13 @@ export interface paths {
9556
9758
  sort_by?: string;
9557
9759
  /** @description Sort direction */
9558
9760
  sort_order?: "ASC" | "DESC";
9559
- /** @description Comma-separated transaction statuses (e.g. complete,pending) */
9761
+ /** @description Comma-separated transaction statuses (new, pending, processing, complete, canceled, failed) */
9560
9762
  status?: string;
9561
- /** @description Transaction type filter */
9562
- type?: string;
9763
+ /** @description Transaction type (direction) */
9764
+ type?: "deposit" | "withdrawal";
9563
9765
  /** @description Transaction method filter */
9564
- method?: string;
9565
- /** @description Record type filter */
9766
+ method?: "p2p" | "crypto" | "bank_transfer" | "exchange" | "sbp" | "internal_fiat";
9767
+ /** @description Transaction subtype (e.g. `DEPOSIT_CRYPTO_EXTERNAL`, `CARD_PROVIDER_DEPOSIT`) */
9566
9768
  record_type?: string;
9567
9769
  /** @description Filter by sender or recipient address (matches `from` OR `to` fields) */
9568
9770
  address?: string;
@@ -9662,13 +9864,13 @@ export interface paths {
9662
9864
  get: {
9663
9865
  parameters: {
9664
9866
  query?: {
9665
- /** @description Filter by status (comma-separated for multi-select, e.g. `completed,pending`) */
9867
+ /** @description Filter by status (comma-separated for multi-select — new, pending, processing, complete, canceled, failed) */
9666
9868
  status?: string;
9667
- /** @description Transaction type filter */
9668
- type?: string;
9869
+ /** @description Transaction type (direction) */
9870
+ type?: "deposit" | "withdrawal";
9669
9871
  /** @description Transaction method filter */
9670
- method?: string;
9671
- /** @description Record type filter */
9872
+ method?: "p2p" | "crypto" | "bank_transfer" | "exchange" | "sbp" | "internal_fiat";
9873
+ /** @description Transaction subtype (e.g. `DEPOSIT_CRYPTO_EXTERNAL`, `CARD_PROVIDER_DEPOSIT`) */
9672
9874
  record_type?: string;
9673
9875
  /** @description Filter by sender or recipient address (matches `from` OR `to` fields) */
9674
9876
  address?: string;
@@ -9874,6 +10076,13 @@ export interface paths {
9874
10076
  first_name?: string;
9875
10077
  last_name?: string;
9876
10078
  logo_url?: string;
10079
+ /**
10080
+ * @description Outcome of the member's Sumsub IDENTITY-document step.
10081
+ * `APPROVED` is the only value that permits issuing a card to this member.
10082
+ *
10083
+ * @enum {string}
10084
+ */
10085
+ identity_verification_status?: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "NEEDS_ATTENTION" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
9877
10086
  };
9878
10087
  }[];
9879
10088
  pagination?: components["schemas"]["PaginationResponse"];
@@ -8035,27 +8035,70 @@ export interface components {
8035
8035
  country?: string | null;
8036
8036
  };
8037
8037
  };
8038
- /** @description Bank account information of the sender */
8038
+ /** @description Bank account information of the sender.
8039
+ *
8040
+ * Every key below is always present; a value the payment rail did not
8041
+ * provide is an empty string. Identifiers are placed by what the value
8042
+ * IS, not by what the rail called it: an IBAN is always in `iban` (never
8043
+ * in `account_number`) and a SWIFT/BIC is always in `swift_bic` (never in
8044
+ * `routing_number`), including for orders created before this became the
8045
+ * case. So `account_number` and `routing_number` carry domestic
8046
+ * identifiers only.
8047
+ * */
8039
8048
  L2FOriginatorAccountInfo: {
8040
8049
  /**
8041
- * @description Bank account number
8050
+ * @description Domestic bank account number. Empty when the sender's identifier is an IBAN.
8042
8051
  * @example 202504243736
8043
8052
  */
8044
8053
  account_number?: string;
8045
8054
  /**
8046
- * @description Routing number (for US payments)
8055
+ * @description Domestic routing number (US ABA and equivalents). Empty when the value is a BIC.
8047
8056
  * @example 91311229
8048
8057
  */
8049
8058
  routing_number?: string | null;
8050
- /** @description SWIFT BIC code (for international transfers) */
8059
+ /**
8060
+ * @description Sender's IBAN, for SEPA and SWIFT payments.
8061
+ * @example CZ6508000000192000145399
8062
+ */
8063
+ iban?: string | null;
8064
+ /**
8065
+ * @description SWIFT BIC code of the sender's bank (for international transfers)
8066
+ * @example FIOBCZPPXXX
8067
+ */
8051
8068
  swift_bic?: string | null;
8052
- /** @description Name of the bank/institution */
8069
+ /**
8070
+ * @description Sort code of the sender's bank (UK payments)
8071
+ * @example 60-16-13
8072
+ */
8073
+ sort_code?: string | null;
8074
+ /**
8075
+ * @description Currency of the sender's account, when the rail reports it
8076
+ * @example EUR
8077
+ */
8078
+ currency_code?: string | null;
8079
+ /**
8080
+ * @description Name of the sender's bank. Often empty — several rails do not report
8081
+ * it, and a value that merely repeats the sender's own name is omitted
8082
+ * rather than presented as a bank.
8083
+ *
8084
+ * @example Fio banka, a.s.
8085
+ */
8053
8086
  institution_name?: string | null;
8087
+ /**
8088
+ * @description Correspondent/intermediary bank, when the payment was routed through one
8089
+ * @example SSB PITTSBURGH
8090
+ */
8091
+ intermediary_institution_name?: string | null;
8054
8092
  };
8055
8093
  /**
8056
- * @description Standardized originator (sender) information for L2F ONRAMP orders.
8057
- * Available for order types: L2F_ACH_ONRAMP, L2F_WIRE_ONRAMP, L2F_SEPA_ONRAMP, L2F_SWIFT_ONRAMP.
8058
- * This field appears in order.meta.originator
8094
+ * @description Standardized originator (sender) information for incoming fiat payments,
8095
+ * exposed as `order.meta.originator`.
8096
+ *
8097
+ * The shape is the same whichever rail carried the payment — L2F, Brale,
8098
+ * BCB or Delos onramps all normalize into it. Sender details come from the
8099
+ * paying bank, so how much is populated varies by rail and by payment:
8100
+ * `profile.name` is almost always present, while the sender's address is
8101
+ * rarely reported and is often empty for every field.
8059
8102
  *
8060
8103
  * @example {
8061
8104
  * "profile": {
@@ -8071,8 +8114,12 @@ export interface components {
8071
8114
  * "account_information": {
8072
8115
  * "account_number": "202504243736",
8073
8116
  * "routing_number": "91311229",
8117
+ * "iban": "",
8074
8118
  * "swift_bic": "",
8075
- * "institution_name": ""
8119
+ * "sort_code": "",
8120
+ * "currency_code": "USD",
8121
+ * "institution_name": "JPMorgan Chase",
8122
+ * "intermediary_institution_name": ""
8076
8123
  * },
8077
8124
  * "reference": "20251016MMQFMP2U004005",
8078
8125
  * "memo": "bfgkp5w"
@@ -8080,7 +8127,20 @@ export interface components {
8080
8127
  */
8081
8128
  L2FOriginator: {
8082
8129
  profile?: components["schemas"]["L2FOriginatorProfile"];
8130
+ /** @description Sender's bank details. Present on incoming fiat payments only —
8131
+ * an internal transfer carries `wallet_information` instead.
8132
+ * */
8083
8133
  account_information?: components["schemas"]["L2FOriginatorAccountInfo"];
8134
+ /** @description Sending wallet, in place of `account_information` when the funds
8135
+ * came from another wallet on the platform rather than from a bank.
8136
+ * */
8137
+ wallet_information?: {
8138
+ /** Format: uuid */
8139
+ wallet_uuid?: string;
8140
+ wallet_name?: string;
8141
+ /** @description Source address for a crypto transfer; null for an internal balance transfer */
8142
+ crypto_address?: string | null;
8143
+ } | null;
8084
8144
  /**
8085
8145
  * @description Payment reference number (rail_reference from Railio)
8086
8146
  * @example 20251016MMQFMP2U004005
@@ -8092,6 +8152,36 @@ export interface components {
8092
8152
  */
8093
8153
  memo?: string | null;
8094
8154
  } | null;
8155
+ /**
8156
+ * @description Same shape for an inbound SWIFT payment: the sender is identified by an
8157
+ * IBAN and a BIC, so the domestic fields stay empty.
8158
+ *
8159
+ * @example {
8160
+ * "profile": {
8161
+ * "name": "Giovanni Belfiore",
8162
+ * "address": {
8163
+ * "address_line1": "",
8164
+ * "city": "",
8165
+ * "state": "",
8166
+ * "postal_code": "",
8167
+ * "country": ""
8168
+ * }
8169
+ * },
8170
+ * "account_information": {
8171
+ * "account_number": "",
8172
+ * "routing_number": "",
8173
+ * "iban": "CZ6508000000192000145399",
8174
+ * "swift_bic": "FIOBCZPPXXX",
8175
+ * "sort_code": "",
8176
+ * "currency_code": "USD",
8177
+ * "institution_name": "",
8178
+ * "intermediary_institution_name": ""
8179
+ * },
8180
+ * "reference": "5pdbjv4ev351",
8181
+ * "memo": "Fee for services"
8182
+ * }
8183
+ */
8184
+ L2FOriginatorSwiftExample: components["schemas"]["L2FOriginator"];
8095
8185
  /**
8096
8186
  * @description Optional array of document objects to attach to the order.
8097
8187
  * Documents should be uploaded to a storage service beforehand and only URLs should be provided.
@@ -1020,17 +1020,17 @@ export interface components {
1020
1020
  * @default UNVERIFIED
1021
1021
  * @enum {string|null}
1022
1022
  */
1023
- kyc_status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW" | null;
1023
+ kyc_status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "NEEDS_ATTENTION" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW" | null;
1024
1024
  /**
1025
1025
  * @default UNVERIFIED
1026
1026
  * @enum {string}
1027
1027
  */
1028
- identity_verification_status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
1028
+ identity_verification_status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "NEEDS_ATTENTION" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
1029
1029
  /**
1030
1030
  * @default UNVERIFIED
1031
1031
  * @enum {string}
1032
1032
  */
1033
- face_verification_status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
1033
+ face_verification_status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "NEEDS_ATTENTION" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
1034
1034
  readonly profile_source: string | null;
1035
1035
  readonly profile_synced_at: string | null;
1036
1036
  referral_name: string | null;
@@ -1306,7 +1306,7 @@ export interface components {
1306
1306
  * @default UNVERIFIED
1307
1307
  * @enum {string}
1308
1308
  */
1309
- status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
1309
+ status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "NEEDS_ATTENTION" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
1310
1310
  readonly business_name?: string;
1311
1311
  readonly first_name?: string;
1312
1312
  readonly last_name?: string;
@@ -1689,7 +1689,7 @@ export interface components {
1689
1689
  * @default UNVERIFIED
1690
1690
  * @enum {string}
1691
1691
  */
1692
- status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
1692
+ status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "NEEDS_ATTENTION" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
1693
1693
  /** @enum {string|null} */
1694
1694
  employment_status?: "EMPLOYEE" | "SELF_EMPLOYED" | "RETIRED" | "UNEMPLOYED" | "STUDENT" | "OTHER" | null;
1695
1695
  employment_description?: string | null;
@@ -1761,7 +1761,7 @@ export interface components {
1761
1761
  WalletKycRailDto: {
1762
1762
  message: string | null;
1763
1763
  /** @enum {string} */
1764
- readonly status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
1764
+ readonly status: "APPROVED" | "DECLINED" | "PENDING" | "PROCESSING" | "HOLD" | "NEEDS_ATTENTION" | "DOUBLE" | "SOFT_REJECT" | "REJECT" | "UNVERIFIED" | "WAITING_ON_UBOS" | "WAITING_ON_REVIEW";
1765
1765
  /** @default false */
1766
1766
  terms_confirmed: boolean;
1767
1767
  extra_actions?: components["schemas"]["WalletKycRailExtraActionDto"][];
@@ -285,6 +285,7 @@ export declare enum KYCStatuses {
285
285
  PENDING = "PENDING",
286
286
  PROCESSING = "PROCESSING",
287
287
  HOLD = "HOLD",
288
+ NEEDS_ATTENTION = "NEEDS_ATTENTION",
288
289
  DOUBLE = "DOUBLE",
289
290
  SOFT_REJECT = "SOFT_REJECT",
290
291
  REJECT = "REJECT",
package/dist/constants.js CHANGED
@@ -300,6 +300,7 @@ export var KYCStatuses;
300
300
  KYCStatuses["PENDING"] = "PENDING";
301
301
  KYCStatuses["PROCESSING"] = "PROCESSING";
302
302
  KYCStatuses["HOLD"] = "HOLD";
303
+ KYCStatuses["NEEDS_ATTENTION"] = "NEEDS_ATTENTION";
303
304
  KYCStatuses["DOUBLE"] = "DOUBLE";
304
305
  KYCStatuses["SOFT_REJECT"] = "SOFT_REJECT";
305
306
  KYCStatuses["REJECT"] = "REJECT";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "squarefi-bff-api-module",
3
- "version": "1.36.33",
3
+ "version": "1.36.34",
4
4
  "description": "Squarefi BFF API client module",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",